Использование: org.apache.http
Я использую следующий код для загрузки файлов, большая часть настройки URL выполняется статически, чтобы каждый раз сохранять создание объекта.
private static final HttpClient httpClient;
static {
HttpParams params = new BasicHttpParams();
HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1);
HttpProtocolParams.setContentCharset(params, HTTP.UTF_8);
HttpProtocolParams.setUseExpectContinue(params, false);
HttpConnectionParams.setConnectionTimeout(params, 10000);
HttpConnectionParams.setSoTimeout(params, 10000);
ConnManagerParams.setMaxTotalConnections(params, 100);
ConnManagerParams.setTimeout(params, 30000);
SchemeRegistry registry = new SchemeRegistry();
registry.register(new Scheme("http",PlainSocketFactory.getSocketFactory(), 80)); //TODO port and schema should be coming from the strings file
ThreadSafeClientConnManager manager = new ThreadSafeClientConnManager(params, registry);
httpClient = new DefaultHttpClient(manager, params);
//httpClient.getParams().setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, 30000);
}
Я могу позвонить, используя
private HttpUrlRequest(String host, int port, String path, List<NameValuePair> query, List<NameValuePair> post)
Я хочу, чтобы вызывающая сторона могла указывать номер port для URL.Но так как
registry.register(new Scheme("http",PlainSocketFactory.getSocketFactory(), 80));
задан статически, не должен ли я также изменить этот номер порта?Как я могу решить это?