Java HttpClient-设置一个;“全球”;套接字超时,以及每个请求的单独超时

Java HttpClient-设置一个;“全球”;套接字超时,以及每个请求的单独超时,java,apache-commons-httpclient,Java,Apache Commons Httpclient,对于HttpClient,我使用以下设置默认套接字/连接超时: HttpParams params = new BasicHttpParams(); HttpConnectionParams.setSoTimeout(params, 30000); HttpConnectionParams.setConnectionTimeout(params, 30000); mClient = new DefaultHttpClient(connectionManager, params); 我想知道

对于HttpClient,我使用以下设置默认套接字/连接超时:

HttpParams params = new BasicHttpParams();

HttpConnectionParams.setSoTimeout(params, 30000);
HttpConnectionParams.setConnectionTimeout(params, 30000);

mClient = new DefaultHttpClient(connectionManager, params);
我想知道是否可以在每个请求的基础上覆盖这些值

编辑:这样行吗

HttpParams params = req.getParams(); // req is an HttpRequest object
HttpConnectionParams.setSoTimeout(params, 60000);
HttpConnectionParams.setConnectionTimeout(params, 60000);

我试过了,但很难测试/创建超时情况。

如果您使用的是HttpClient 4.0,您可以这样做:

mClient = new DefaultHttpClient(connectionManager, params) {
  protected HttpParams determineParams(HttpRequest req) {
    //Fill in your impl here
 }

如果您使用的是HttpClient 4.0,则可以执行以下操作:

mClient = new DefaultHttpClient(connectionManager, params) {
  protected HttpParams determineParams(HttpRequest req) {
    //Fill in your impl here
 }

您可以简单地在请求对象上设置这些参数。详情请参阅:

您只需在请求对象上设置这些参数即可。详情请参阅:

您使用的是哪个版本的HttpClient?4.0.x-Android中的版本您使用的是哪个版本的HttpClient?4.0.x-AndroidLooks中的版本与URL现在的版本类似:看起来URL现在是: