Java HTTP客户端请求设置超时

尼古拉斯

我想设置一个请求的超时时间。这是代码,到目前为止。

final HttpClient httpclient = HttpClients.createDefault();
final HttpPost httppost = new HttpPost(address);
httppost.setHeader("Accept", "text/xml");
httppost.setHeader("Content-type", "application/xml; charset=UTF-8");
httppost.setEntity(new StringEntity(body));
final HttpResponse response = httpclient.execute(httppost);
final HttpEntity entity = response.getEntity();

我试过了(不起作用,继续加载并忽略超时)

// set the connection timeout value to 30 seconds (30000 milliseconds)
final HttpParams httpParams = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParams, 30000);
client = new DefaultHttpClient(httpParams);

和(这个抛出java.lang.UnsupportedOperationException

httpclient = HttpClients.createDefault();
httpclient.getParams().setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, 3000);
httpclient.getParams().setParameter(CoreConnectionPNames.SO_TIMEOUT, 6000);

还有其他方法可以设置音调吗?我实际上并不需要响应,因此像异步请求之类的东西也可以完成工作。

希希尔·库马尔(Shishir Kumar)

ApacheHttpClient有两个单独的超时:一个等待建立TCP连接的超时时间,另一个等待一个后续数据字节的超时时间。

HttpConnectionParams.setConnectionTimeout()用于建立TCP连接,而HttpConnectionParams.setSoTimeout()在等待后续数据字节时使用。

// Creating default HttpClient
HttpClient httpClient = new DefaultHttpClient();
final HttpParams httpParams = httpClient.getParams();

// Setting timeouts
HttpConnectionParams.setConnectionTimeout(httpParams, 5000);
HttpConnectionParams.setSoTimeout(httpParams, 30000);

// Rest of your code
final HttpPost httppost = new HttpPost(address);
httppost.setHeader("Accept", "text/xml");
httppost.setHeader("Content-type", "application/xml; charset=UTF-8");
httppost.setEntity(new StringEntity(body));
final HttpResponse response = httpclient.execute(httppost);
final HttpEntity entity = response.getEntity();

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何为Java / Kotlin / Android中的所有请求设置gRPC客户端超时

来自分类Dev

java延迟http客户端请求处理

来自分类Dev

Java http客户端和POODLE

来自分类Dev

java非阻塞HTTP客户端

来自分类Dev

Java客户端套接字返回连接超时异常

来自分类Dev

如何使用Java的HTTP客户端库设置应用程序名称?

来自分类Dev

查看来自Java客户端的SOAP请求

来自分类Dev

Java使用HTTP客户端4.5客户端get语句

来自分类Dev

无法在Java中运行简单的HTTP客户端

来自分类Dev

通过HTTP代理的Java FTPS客户端

来自分类Dev

HTTP流与Java Jersey客户端异常下降

来自分类Dev

Java的11 HTTP客户端异步执行

来自分类Dev

确实Java的HTTP客户端处理压缩

来自分类Dev

java http apache客户端未收到内容

来自分类Dev

Akka-http,在 Java 中获取客户端 IP

来自分类Dev

oAuth 令牌与 Java Apache http 客户端

来自分类Dev

Java客户端/服务器套接字程序-服务器不响应客户端请求

来自分类Dev

如何在Windows Phone 8.1 / Windows 8.1中为HTTP客户端请求操作设置超时

来自分类Dev

Jolokia Java客户端

来自分类Dev

JAVA Grpc客户端

来自分类Dev

休息客户端JAVA

来自分类Dev

OAuth客户端Java

来自分类Dev

Druid 的 Java 客户端?

来自分类Dev

java.sql.SQLException:客户端尝试检出Connection的尝试已超时

来自分类Dev

SFTP Mule 客户端 Java API - 用户登录超时问题

来自分类Dev

Apache HTTP 客户端超时

来自分类Dev

将SSL密钥库文件添加到Java可信存储中,以在PCF(Cloud Foundry)上进行HTTP客户端请求

来自分类Dev

为HTTP客户端请求模拟HTTP服务器超时

来自分类Dev

如何使用grpc-java从请求元数据获取客户端ip

Related 相关文章

热门标签

归档