Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import io.vertx.core.Future;
- import io.vertx.core.Promise;
- import io.vertx.core.Vertx;
- import io.vertx.core.buffer.Buffer;
- import io.vertx.core.http.HttpServer;
- import io.vertx.core.json.JsonObject;
- import io.vertx.ext.web.Router;
- import io.vertx.ext.web.client.HttpResponse;
- import io.vertx.ext.web.client.WebClient;
- public class Sandbox {
- final private static int PORT_TDG = 8181;
- final private static int PORT_MY = 8080;
- final private static String HOST = "localhost";
- final private static String TOKEN = "9f226286-e0d8-4125-ad43-b123b4e464da";
- final private static String TYPE = "application/json;charset=utf-8";
- public static void main(String[] args) {
- Vertx vertx = Vertx.vertx();
- WebClient client = WebClient.create(vertx);
- Router router = Router.router(vertx);
- Sandbox sandbox = new Sandbox();
- HttpServer server = vertx.createHttpServer();
- JsonObject request = new JsonObject().put("query", "{Book { uuid, book_name, author }}");
- router
- //.get("/get")
- .post("/post")
- .respond(
- ctx -> sandbox.graphql(request, client)
- .onSuccess(httpResp -> {
- if (httpResp.statusCode() == 200) {
- ctx.end(httpResp.bodyAsBuffer());
- }
- })
- );
- server.requestHandler(router).listen(8080);
- }
- public Future<HttpResponse<Buffer>> graphql(JsonObject request, WebClient client) {
- Promise<HttpResponse<Buffer>> promise = Promise.promise();
- client
- .post(PORT_TDG, HOST, "/graphql")
- .putHeader("Content-Type", "application/json")
- .sendJson(request, t -> {
- if (t.succeeded()) {
- promise.complete(t.result());
- }
- });
- return promise.future();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement