【问题标题】:how to use apache async http client since this is not working如何使用 apache 异步 http 客户端,因为这不起作用
【发布时间】:2012-11-09 22:09:05
【问题描述】:

我有一个非常简单的客户

private void start() throws IOReactorException, InterruptedException {
    DefaultHttpAsyncClient client = new DefaultHttpAsyncClient();

    HttpAsyncRequestProducer prod = HttpAsyncMethods.createGet("http://b1.bigde.nrel.gov:8080");

    HttpAsyncResponseConsumer<Object> handler = new MyResponseHandler();
    FutureCallback<Object> futureCb = new MyFutureCbHandler();
    client.execute(prod, handler, futureCb);

    log.info("now sleeping");
    Thread.sleep(30000);
    log.info("done sleeping");
}

问题是没有调用任何监听器方法。 MyResponseHandler 正在扩展 AsyncCharConsumer,但没有调用他,也没有调用 FutureCallback。我从来没有得到回应。

注意 1:我需要能够调用 client.execute 并在不与 Futures 交互的情况下返回堆栈

注意 2:我需要调用侦听器方法(并且需要在数据传入时调用它们,因为远程端正在流回 http 分块。

有没有办法让它工作?还是我应该切换库?

谢谢, 院长

【问题讨论】:

    标签: apache-httpclient-4.x asynchttpclient


    【解决方案1】:

    启动客户端会有很大帮助;-)

    client.start()

    您可能还想在完成后将其关闭。

    【讨论】:

      猜你喜欢
      • 2017-08-30
      • 2016-10-27
      • 2021-04-12
      • 2023-01-02
      • 1970-01-01
      • 1970-01-01
      • 2017-12-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多