我希望能够使用apache httpclient访问自定义网址。像这样:

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

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

在Java中注册一个
URL.setURLStreamHandlerFactory(...)

问候。

有帮助吗?

解决方案

我认为在公共httpclient中有一种方法可以做到这一点。它毕竟不是一个HTTP客户端和“media:///squishy.jpg”。不是HTTP,因此无论如何都不能使用实现HTTP协议的所有代码。

URL.setURLStreamHandlerFactory(...)

可能是要走的路,但您可能需要手动执行大量协议编码,具体取决于您的“媒体”协议。

其他提示

我们这样做:

 org.apache.commons.httpclient.protocol.Protocol.registerProtocol("ss-https", 
     new Protocol("ss-https",
     (ProtocolSocketFactory)new EasySSLProtocolSocketFactory(), 443));
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top