问题标签 [asynchttpclient]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2564 浏览

http - 使用 Apache Camel 进行火灾并忘记 HTTP 请求

我想知道是否可以触发 HTTP POST 请求并忘记并且不要等到您得到响应。我不确定我应该使用 HTTP 组件还是 AHC,我想 AHC 更适合我的场景。

我正在使用 Apache Camel 2.12.1 和 Spring XML。如果可能,我该如何实现?

谢谢!

0 投票
1 回答
630 浏览

android - com.ning.http.client.AsyncHttpClient 和 NetworkOnMainThreadException

我正在使用com.ning.http.client.AsyncHttpClient如下方式打开 Web 套接字连接。

这在 github 文档https://github.com/AsyncHttpClient/async-http-client中有概述。

但是,我看到onError每次都被调用,但有一个android.os.NetworkOnMainThreadException例外。

为什么是这样?我真的需要一个单独的线程,客户端可以在其中操作或 AsyncTask 的实例吗?

0 投票
0 回答
390 浏览

json - JSON包含中文时出错

AsyncHttpClientPOST JSON 数据,如果 JSON 中有中文,则响应为

http 400 The request sent by the client was syntactically incorrect ()

我的服务器是一个 Rest 服务器。谁能告诉我这个错误是怎么发生的,因为我的服务器可以正确接收中文?

0 投票
0 回答
938 浏览

java - 使用 ning 的异步 http 客户端库进行日志记录

我们如何使用 Ning 的异步 HTTP 客户端设置日志记录?除了它依赖于 Log4J 之外,文档中没有指向它的指针。我的项目使用 log4j,下面显示了我们的 log4j.properties 文件的内容。

我知道 ning apache HTTP 客户端使用 slf4j 进行日志记录,因此我们在项目类路径中有 log4j-over-slf4j.jar 而不是 log4j.jar。请帮忙。

提前致谢。

0 投票
1 回答
2317 浏览

java - 带有 async-http-client for https 的 CertificateException

几天前,我开始在使用async-http-client访问https://ws.plimus.com/时遇到问题。我收到“一般 SSLEngine 问题”消息,在堆栈跟踪中我可以看到它是由

这个 SO question描述了基本相同的事情。注释掉 java.security 中的行会使错误消失,但我认为禁用 MD2 是有充分理由的。

使用拉曼的提示答案,我发现确实, async-http-client 库使用 X509TrustManager 接口,但我无法改变它。

运行这个:

什么也没找到,所以我什至不知道是哪个证书导致了这个问题。

除了解决方法,我还能做些什么吗?

我将重现问题的演示代码放在 github 上

0 投票
2 回答
341 浏览

scala - play ws 同时执行两个(或更多)gzip 请求有时会失败

我的请求:

用于解压body的代码

然后我同时发送两个请求。

有时很好

但有时它会重现

akka.dispatch.BatchingExecutor$Batch$$anonfun$run$1.processBatch$1(BatchingExecutor.scala:67) [错误] akka.dispatch.BatchingExecutor$Batch$$anonfun$run$1.apply$mcV$sp(BatchingExecutor.scala: 82) [错误] akka.dispatch.BatchingExecutor$Batch$$anonfun$run$1.apply(BatchingExecutor.scala:59) [错误] akka.dispatch.BatchingExecutor$Batch$$anonfun$run$1.apply(BatchingExecutor.scala: 59) [错误] akka.dispatch.BatchingExecutor$Batch.run(BatchingExecutor.scala:58) [错误] akka.dispatch.TaskInvocation.run(AbstractDispatcher.scala:42) [错误] akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec (AbstractDispatcher.scala:386)

怎么了 ?

0 投票
0 回答
2038 浏览

java - 带有客户端身份验证的 HttpAsyncClient SSL

我想使用 HttpAsyncClient 使用 SSL 和客户端身份验证(除了服务器身份验证)。

我遇到了一些问题,但最终我找到了正确的方法。我向您展示如何做到这一点:


从 PEM 生成密钥库(PEM -> PKCS#12 密钥库 -> JKS 密钥库)

从私钥和公共证书创建 PKCS12 密钥库:

将 PKCS12 密钥库转换为 JKS 密钥库:

列出 JKS 密钥库的内容:


您的本地 JVM 应该信任服务器证书。如果它是自签名的,请将其添加到 cacerts(受信任的证书列表;其默认密码为“changeit”):


生成客户端并执行 POST 的 Java 代码:

我希望这对你有帮助。

0 投票
2 回答
16448 浏览

java - Apache异步HttpClient不快

我对 Apache http 客户端非常陌生,并且正在尝试从网站获取状态代码。在 Apache http 教程中找到以下示例。

它是真的异步还是串行调用。必须做些什么才能使调用异步且更快。

0 投票
2 回答
937 浏览

android - SwipeRefreshLayout 和 AsyncHttpClient 在第一个 onCreate 上不起作用

我正在使用 SwipeRefreshLayout 远程获取数据,我使用 AsyncHttpClient 来处理网络方面的事情。

一切都按预期工作,除了一个场景:应用程序的第一次 onCreate 启动。

主要活动:

onRefresh:

进行网络提升的getGames:

因此,当我从我的 IDE 启动应用程序时,onCreate调用该getGames()函数并记录它进入那里,但网络MyRestClient.get("games", null, new JsonHttpResponseHandler() {没有被调用,因为它不获取数据并且从不登录 onSuccess 或 onFailure。

现在,如果我滑动刷新它可以工作并成功地用获取的数据填充我的列表视图并记录它在 onSuccess 中。

如果我通过后退按钮关闭应用程序并重新打开它可以正常工作并刷新我的列表视图。

因此,当从我的 IDE 启动到模拟器时,它不仅适用于第一个 onCreate 调用——但在那之后,第一个初始 onCreate 不能正常工作。

我不确定我在这里缺少什么,感谢您的帮助,谢谢。

SwipeRefreshLayout: https ://developer.android.com/reference/android/support/v4/widget/SwipeRefreshLayout.html

AsyncHttpClient: http ://loopj.com/android-async-http/

编辑:

编辑2:

这是应用程序启动时我的日志中唯一看起来与众不同的部分。

0 投票
1 回答
1872 浏览

android - 多个 AsyncHttpClient 获取请求以填充一个活动

我有一个“GameActivity”,为了填充布局,我必须多次调用远程 API,并想知道使用 AsyncHttpClient 包http://loopj.com/android-async-http/完成此操作的最佳方法。

我当前对单个 API 调用的设置:

所以我的 getGame Details 将是第一个调用,但随后我需要再调用 4-6 个。

我的getGameDetails:

所以我的想法是为我需要的每个调用添加一个函数,然后在我的 onCreate 中一个接一个地调用它们,如下所示:

另一种方法是调用 AsyncHttpClient 的 onSuccess 方法中的下一个函数,但这似乎不对。

问题:我应该在这里使用 AsyncHttpClient 的“批处理请求”吗?

任何输入表示赞赏,谢谢。