请求超时的问题 HttpClient

问题描述

public static String getJsonOfArray(String url) throws Exception { String JsonStr =null; if(url.contains("?")){ url +="&type=m"; }else{ url +="?type=m"; } HttpGet httpRequest = new HttpGet(url);HttpClient client = DefaultClient.getInstance();client.getParams().setParameter("http.socket.timeout",2000);//设置请求服务器超时时间 不起作用client.getParams().setParameter(ClientPNames.COOKIE_POLICY, CookiePolicy.BROWSER_COMPATIBILITY);try {HttpResponse httpResponse = client.execute(httpRequest);if (httpResponse.getStatusLine().getStatusCode()==HttpStatus.SC_OK){JsonStr = EntityUtils.toString(httpResponse.getEntity());}} catch (ClientProtocolException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}Log.i("XX","---JsonStr---"+JsonStr); return JsonStr; }

解决方案

我的,希望有用public class GetJsonData {public static String getConnectionData(String url) {StringBuilder sb=new StringBuilder();HttpClient client=new DefaultHttpClient();HttpParams params=client.getParams();HttpGet get=new HttpGet(url);try {HttpResponse response=client.execute(get);HttpConnectionParams.setConnectionTimeout(params, 3000);HttpConnectionParams.setSoTimeout(params, 5000);HttpEntity entity=response.getEntity();if(entity!=null){BufferedReader reader=new BufferedReader(new InputStreamReader(entity.getContent(),"utf-8"),8192);String line=null;while((line=reader.readLine())!=null){sb.append(line+"n");}reader.close();}} catch (ClientProtocolException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}return sb.toString();}}

时间: 2024-09-20 10:59:43

请求超时的问题 HttpClient的相关文章

HttpClient连接请求超时设置

 应该是:defaultHttpClient = new DefaultHttpClient();请求超时 defaultHttpClient.getParams().setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, 10000);  读取超时 defaultHttpClient.getParams().setParameter(CoreConnectionPNames.SO_TIMEOUT, 10000);

java-Httpclient4.3 设置请求超时的问题呢

问题描述 Httpclient4.3 设置请求超时的问题呢 问题描述: 多线程使用httpclient调用接口时,一直保持响应,连接不断开. 增加了线程了,和超时的设置,但是仍然不能保证响应过长,断开连接. 把工具的设置贴上来 private static final CloseableHttpClient httpClient; public static final String CHARSET_GBK = "GBK"; public static final String CHA

Win7电脑Ping DNS时出现请求超时如何解决

  1.在利用"ping"命令对DNS服务器的畅通情况进行判断时,当出现"请求超时"现象时,我们首先需要对线路进行排查,以确保路由器.Moden及集线器.交换机.网卡各接口插接可靠,且网线完好无损. 2.在确保硬件线路及设备连接正确的情况下,我们采取以下方法逐个排查故障所在:首先进入MSDOS界面,执行命令"Ping 192.168.0.1"来判断本机与路由器(网关)的连通情况,当无超时现象发生时,即表明线路连接情况正确. 3.当其中一个DNS无

处理(php-cgi.exe - FastCGI 进程超过了配置的请求超时时限)的问题

[详细错误]:HTTP 错误 500.0 - Internal Server Error C:Program FilesPHPphp-cgi.exe - FastCGI 进程超过了配置的请求超时时限[环境]:php + IIS7.5解决办法:方法一:C:WindowsSystem32inetsrvconfigapplicationHost.config 进行编辑,将activityTimeout设置调大,默认为600(10分钟),最大支持3600(1小时),单位秒~ 方法二:开始->运行->c

C# Socket连接请求超时机制实现代码分享

 这篇文章主要介绍了C# Socket连接请求超时机制实现,下面提供代码分享,大家可以参考使用 .Net的System.Net.Sockets.TcpClient和System.Net.Sockets.Socket都没有直接为Connect/BeginConnect提供超时控制机制.因此,当服务器未处于监听状态,或者发生网络故障时,客户端连接请求会被迫等待很长一段时间,直到抛出异常.默认的等待时间长达20~30s..Net Socket库的SocketOptionName.SendTimeout

path-afn请求超时怎么设置 代码如下

问题描述 afn请求超时怎么设置 代码如下 NSString *path =[NSString stringWithFormat: @"%@/report/list",HOST_URL]; AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; NSMutableDictionary *params = [NSMutableDictionary dictionary]; [man

SQL SERVER错误:已超过了锁请求超时时段。 (Microsoft SQL Server,错误: 1222)

    在SSMS(Microsoft SQL Server Management Studio)里面,查看数据库对应的表的时候,会遇到"Lock Request time out period exceeded.(Microsoft SQL Server, 错误1222)",对应的中文错误提示为"已超过了锁请求超时时段. (Microsoft SQL Server,错误: 1222)",如下截图所示,不管是用一般权限的账号还是具有sysadmin角色的登录名都是如

timeout-AFNetworking如何加入请求超时及网络不通验证?

问题描述 AFNetworking如何加入请求超时及网络不通验证? 使用AFNetworking + SVProgressHUD post请求数据的时候 如果网络有问题 很慢或者不通 SVProgressHUD会一直显示 AFNetworking通过什么来判断网络有问题 或者请求超时啊? 解决方案 苹果官方 有个判断网络是否连通以及当前是2G 3G网络的代码 可以直接拿来使用,请求超时 会进入AFNetworking的异常方法中

关于Android网络请求超时处理

问题描述 关于Android网络请求超时处理 一个请求10秒后无响应怎么做处理,我想在超时后调用缓存数据,但是不知道怎么判断网络超时,项目用了afinal,没找到超时后的处理方法,只有onsuccess和onfailed方法 解决方案 Android Volley网络请求Android使用Volley请求网络Android 异步网络请求及协调CountDownLatch 解决方案二: // 1.设置超时时间 conn.setConnectTimeout(5000);// 设置连接超时时间 //