как зарегистрировать обработчик URL для Apache Commons httpclient - PullRequest
1 голос
/ 29 сентября 2008

Я хочу иметь возможность доступа к пользовательским URL с помощью Apache httpclient. Примерно так:

HttpClient client = new HttpClient();
HttpMethod method = new GetMethod("media:///squishy.jpg");
int statusCode = client.executeMethod(method);

Можно ли как-нибудь зарегистрировать пользовательский обработчик URL? Или я должен просто зарегистрировать один на Java, используя

URL.setURLStreamHandlerFactory(...)

Привет.

Ответы [ 2 ]

1 голос
/ 29 сентября 2008

Мы делаем это так:

 org.apache.commons.httpclient.protocol.Protocol.registerProtocol("ss-https", 
     new Protocol("ss-https",
     (ProtocolSocketFactory)new EasySSLProtocolSocketFactory(), 443));
0 голосов
/ 29 сентября 2008

Я не думаю, что есть способ сделать это в общем httpclient. Это также не имеет большого смысла, в конце концов, это HTTP-клиент, а «media: ///squishy.jpg» не HTTP, поэтому весь код для реализации протокола HTTP, вероятно, не может быть использован в любом случае .

URL.setURLStreamHandlerFactory(...)

может быть подходящим вариантом, но вам, вероятно, придется много кодировать протоколов вручную, в зависимости от вашего "медиа" -протокола.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...