unix中的http客户端vertx

时间:2017-07-07 09:23:58

标签: java vert.x

我在Unix服务器上运行vertx时遇到问题。收到完整消息时,结束处理程序不起作用。

HttpClientRequest request = client.post (8580, "localhost", "/", response -> 
{

  if (response.statusCode () == 200) {
    response.handler (t -> {

        LOG.info ("RECEIVE DATA: " + t.toString ());

    });
    response.endHandler (t -> {
        LOG.info ("endHandler: DONE"); //DO NOT PRINT ON LOG FILE
    });

  } else {
    LOG.info  ("Sent error:"+response.statusMessage ());
  }
});

我的源代码演示:https://github.com/blueskyvn/vertx_client

1 个答案:

答案 0 :(得分:1)

  1. 您应在请求完成后关闭HTTP客户端。因此,将client.close();行移至响应处理程序。
  2. 移动整个代码以使用HTTP客户端到Verticle。您可以将它移动到HttpVerticle类,并在服务器启动后调用它。使用listen方法进行回调。