Httpclient超时timeout设置
一:连接超时:connectionTimeout
1:指的是连接一个url的连接等待时间。
二:读取数据超时:soTimeout
1:指的是连接上一个url,获取response的返回等待时间。
For example:
// 设置连接时间
client.getHttpConnectionManager().getParams().setConnectionTimeout(5000);
client.getHttpConnectionManager().getParams().setSoTimeout(60000);
/**
* 消息发送处理.
* HTTP发送方式
* @param content 消息内容
* @return 返回消息
*/
private GeneralReturnInfo postHttpData(String content) {
GeneralReturnInfo out = new GeneralReturnInfo();
String result = "";
PostMethod postMethod = new PostMethod(serviceUrl); try {
postMethod.setParameter("content", content); HttpClient client = new HttpClient();
client.getParams().setParameter(HttpMethodParams.HTTP_CONTENT_CHARSET, "UTF-8");
// 设置连接时间
client.getHttpConnectionManager().getParams().setConnectionTimeout(5000);
client.getHttpConnectionManager().getParams().setSoTimeout(60000);
int status = client.executeMethod(postMethod);
if (status == HttpStatus.SC_OK) {
result = postMethod.getResponseBodyAsString();
if (StringUtils.isEmpty(result)) {
String msg="HTTP访问失败(返回报文为空)(" + serviceUrl + ").";
System.err.println(msg);
throw new AdapterException(ErrorType.CLIENT_NET_ERROR, "", msg);
} out = JSON.parseObject(result, GeneralReturnInfo.class);
} else {
String msg="HTTP访问:返回状态不等于200(" + status + ")(" + serviceUrl + ")).";
System.err.println(msg);
throw new AdapterException(ErrorType.CLIENT_NET_ERROR, "", msg);
} } catch (Exception e) { // 将新产生的例外封装
if (e instanceof AdapterException) {
throw (AdapterException) e;
} else if (e instanceof ConnectException) {
System.err.println("HTTP访问失败(连接失败)(" + serviceUrl + ")).");
throw new AdapterException(ErrorType.CLIENT_NET_ERROR, e, "HTTP访问失败(连接失败)(" + serviceUrl + ")).");
} else if (e instanceof ConnectTimeoutException) {
System.err.println("HTTP访问失败(连接超时)(" + serviceUrl + ")).");
throw new AdapterException(ErrorType.CLIENT_NET_ERROR, e, "HTTP访问失败(连接超时)(" + serviceUrl + ")).");
} else if (e instanceof SocketTimeoutException) {
System.err.println("HTTP访问失败(访问超时)(" + serviceUrl + ")).");
throw new AdapterException(ErrorType.CLIENT_NET_ERROR, e, "HTTP访问失败(访问超时)(" + serviceUrl + ")).");
} else {
System.err.println("HTTP访问失败(调用异常)(" + serviceUrl + ")).");
throw new AdapterException(ErrorType.CLIENT_NET_ERROR, e, "HTTP访问失败(调用异常)(" + serviceUrl + ")).");
}
} finally {
// 释放连接
postMethod.releaseConnection();
}
return out;
}
com.creditharmony.apporveadapter.core.client.ClientPoxy 第170行;
Httpclient超时timeout设置的更多相关文章
- httpclient超时时间设置及代理设置
超时时间 设置HttpClient的超时时间,非常有必要性,因为httpclient 默认超时时间很长,自己可以测试一下是多久,设置超时时间否则会影响自己系统的业务逻辑,例如阻塞系统,影响系统的吞吐量 ...
- httpClient 超时时间设置(转)
尊重博主原创,特贴博客链接.copy下来只怕以后链接失效或删掉. 转自:http://blog.csdn.net/hi_kevin/article/details/32316171 HttpClien ...
- vue-resource请求超时timeout设置
请求超时设置通过拦截器Vue.http.interceptors实现具体代码如下 main.js里在全局拦截器中添加请求超时的方法 方法1:超时之后会调用请求中的onTimeoutd方法,then方法 ...
- HTTPClient 超时链接设置
远程访问链接,设置时间,从而减少不必要的麻烦,但是HttpClient版本不一致,方法不一样,所以有了如下设置 原帖链接:https://www.cnblogs.com/jimmy-muyuan/p/ ...
- HttpClient超时设置setConnectionTimeout和setSoTimeout
http是基于TCP/IP进行通信的,tcp通过3次握手建立连接,并最终以4次挥手终止通信. 知乎上对三次握手和四次挥手有如下解释: 作者:知乎用户链接:https://www.zhihu.com/q ...
- httpclient超时总结(转)
Httpclient超时 背景: 网站这边多次因为httpclient调用超时时间没设置好导致关掉,影响非常不好,而且问题重复出现,查看网络,没有比较明确介绍httpclient所有超时相关的设置(大 ...
- c# webConfig中的session超时详细设置
webConfig中的session超时详细设置 我们在webConfig中设置Session超时的时候,如果最后发行的地址是远程服务器,我们很多不是必须的属性并不用设置,如果设之后,倒不能让 ses ...
- axios超时timeout拦截
应用场景: 在网络请求中,可能不可避免的会遇到网络差或者请求超时的情况,这时候,如果你采用的技术是axios,那就可以通过设置拦截器捕获这个异常情况,并做出下一步处理. 代码实践: ① 设置拦截器,返 ...
- MYSQL的数据连接超时时间设置
大规模多线程操作事务的时候,有时候打开一个链接,会进行等待,这时候如果数据库的超时时间设置的过短,就可能会出现,数据链接自动被释放,当然设置过大也不好,慢SQL或其他因素引起的链接过长,导致整个系统被 ...
随机推荐
- Lodop获取客户端主网卡ip地址是0.0.0.0
LODOP技术手册的GET_SYSTEM_INFO篇,LODOP可以用语句获取到客户端很多信息,NetworkAdapter.1.IPAddress是主网卡IP地址,通常情况下是没问题的,不过如果当前 ...
- JAVA web 使用有盟推送总结
仔细阅读文档,下边的都是废话. 为了省事,iOS和Android 提供了所有了参数,需要那个了修改传参. //ios actionURL为自定义参数 $.ajax({ type : "POS ...
- VM下安装Kali虚拟机
VM下Kali虚拟机安装 下载kali Linux系统镜像 下载地址:http://mirrors.hust.edu.cn/kali-images/ 网页如下: kali官网:http://www.k ...
- BZOJ2151种树——模拟费用流+链表+堆
题目描述 A城市有一个巨大的圆形广场,为了绿化环境和净化空气,市政府决定沿圆形广场外圈种一圈树.园林部门得到指令后,初步规划出n个种树的位置,顺时针编号1到n.并且每个位置都有一个美观度Ai,如果在这 ...
- [WC2018]即时战略——动态点分治(替罪羊式点分树)
题目链接: [WC2018]即时战略 题目大意:给一棵结构未知的树,初始时除1号点其他点都是黑色,1号点是白色,每次你可以询问一条起点为白色终点任意的路径,交互库会自动返回给你这条路径上与起点相邻的节 ...
- python3,打印一年的某一天是一年的第几天
year = int(input('year:')) month = int(input('month:')) day = int(input('day:')) months = (0,31,59,9 ...
- AtCoder Regular Contest 102 E Stop. Otherwise...
题目链接:atcoder 大意:有\(n\)个骰子,每个骰子上面有\(k\)个数,分别是\(1\text ~ k\),现在求\(\forall i\in[2...2k]\),求出有多少种骰子点数的组合 ...
- 【XSY1081】随机存储器 网络流
题目描述 Bob有\(2^n\)字节的内存,编号为\([0,2^n-1)\).他想对每个字节的内存分别分配一个值.对于编号为\(i\)的内存,如果它被分配了一个值\(j(0\leq j<2^m) ...
- MT【309】正弦的平方差公式
在锐角$\Delta ABC$中,角$A,B,C$所对的边分别为$a,b,c$,且满足$b^2-a^2=ac$,则$\dfrac{1}{\tan A}-\dfrac{1}{\tan B}$ 的取值范围 ...
- 【hdu 5628】Clarke and math (Dirichlet卷积)
hdu 5628 Clarke and math 题意 Given f(i),1≤i≤n, calculate \(\displaystyle g(i) = \sum_{i_1 \mid i} \su ...