1

我希望能够使用 apache httpclient 访问自定义 URL。像这样的东西:

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

我可以以某种方式注册自定义 URL 处理程序吗?或者我应该只用Java注册一个,使用

URL.setURLStreamHandlerFactory(...)

问候。

4

2 回答 2

1

我们这样做:

 org.apache.commons.httpclient.protocol.Protocol.registerProtocol("ss-https", 
     new Protocol("ss-https",
     (ProtocolSocketFactory)new EasySSLProtocolSocketFactory(), 443));
于 2008-09-29T11:59:53.640 回答
0

我认为在 commons httpclient 中没有办法做到这一点。它也没有多大意义,毕竟它是一个HTTP客户端并且“media:///squishy.jpg”不是HTTP,所以实现HTTP协议的所有代码可能无论如何都无法使用.

URL.setURLStreamHandlerFactory(...)

可能是要走的路,但是您可能必须手动进行很多协议编码,具体取决于您的“媒体”协议。

于 2008-09-29T11:59:37.587 回答