Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 提高HTTPClient连接的速度_Java_Android_Http - Fatal编程技术网

Java 提高HTTPClient连接的速度

Java 提高HTTPClient连接的速度,java,android,http,Java,Android,Http,我已经四处搜索了几个小时,试图找到答案,但我似乎什么也找不到 在我正在制作的android应用程序中,我试图连接到一个网站并获取其标题。从每个页面我需要getStatusCode和响应时间。我可以这样做,但问题是这需要时间。每个连接需要0.7-3秒。我尝试了大量的网站,所以这不仅仅是服务器的问题。 代码如下: HttpParams params = new BasicHttpParams(); HttpProtocolParams.setVersion(params, HttpVersion.H

我已经四处搜索了几个小时,试图找到答案,但我似乎什么也找不到

在我正在制作的android应用程序中,我试图连接到一个网站并获取其标题。从每个页面我需要getStatusCode和响应时间。我可以这样做,但问题是这需要时间。每个连接需要0.7-3秒。我尝试了大量的网站,所以这不仅仅是服务器的问题。 代码如下:

HttpParams params = new BasicHttpParams();
HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1);
HttpClient httpclient = new DefaultHttpClient(params);
HttpResponse response;
String responseString = null;

long startTime = System.currentTimeMillis();
response = httpclient.execute(new HttpGet(site));
long elapsedTime = System.currentTimeMillis() - startTime;
Log.v("debugging",elapsedTime+" ");
从我所读到的,很多人都在抱怨速度太快。有人说,指定http版本可以加快速度,但这并没有改变任何事情。 有人知道一种更快的方法吗?或者一种更快的方法


谢谢最近我遇到了同样的问题,尤其是在使用安卓2.3.x的旧设备上,请求和响应耗时超过3秒。使用HttpURLConnection后,响应时间约为1秒,具体取决于响应的大小。在Nexus4上,请求和响应所用的时间与桌面浏览器所用的时间大致相同

编辑 试试这个例子。这对我帮助很大

现在我想起来了,我还做了一件事,那就是在旧设备上有所帮助。如果您的服务器使用GZIP压缩,请尝试禁用它

urlConnection.setRequestProperty("Accept-Encoding", "identity");

资料来源:

我想你手头没有任何例子吧?我做了下面提到的事情:得到了同样的响应时间吗?谢谢:D