DefaultHttpClient超时设置:
1.其实是在HttpConnectionParams里设置的。我自己写了一个继承DefaultHttpClient的类,以后使用用这个就行了:
-
-
-
-
-
-
public class MyHttpClient extends DefaultHttpClient{
-
-
-
-
-
-
-
public DefaultHttpClient getHttpClient(int rTimeOut,int sTimeOut){
-
BasicHttpParams httpParams = new BasicHttpParams();
-
HttpConnectionParams.setConnectionTimeout(httpParams, rTimeOut);
-
HttpConnectionParams.setSoTimeout(httpParams, sTimeOut);
-
DefaultHttpClient client = new DefaultHttpClient(httpParams);
-
return client;
-
}
-
}
如何使用:
-
HttpPost httpRequest =new HttpPost(validateUrl);
-
-
-
-
-
List params=new ArrayList();
-
params.add(new BasicNameValuePair("username",userName));
-
params.add(new BasicNameValuePair("password",password));
-
try{
-
-
httpRequest.setEntity(new UrlEncodedFormEntity(params,HTTP.UTF_8));
-
-
HttpResponse httpResponse = null;
-
try{
-
httpResponse=new MyHttpClient().getHttpClient(7000,7000).execute(httpRequest);
-
}catch(Exception e){
-
isNetError = true;
-
System.out.println("netError");
-
}
2.
请求超时
httpclient.getParams().setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, 60000);
读取超时
httpclient.getParams().setParameter(CoreConnectionPNames.SO_TIMEOUT, 60000);
DefaultHttpClient超时设置:
HttpClient httpClient=new HttpClient();
链接超时
httpClient.getHttpConnectionManager().getParams().setConnectionTimeout(60000);
读取超时
httpClient.getHttpConnectionManager().getParams().setSoTimeout(60000)
版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/sdujava2011/article/details/38921019
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。