2008-09-29 112 views
1

我想能夠訪問與Apache httpclient的自定義URL。類似這樣的:如何註冊Apache處理程序的Apache公共httpclient

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

我可以以某種方式註冊一個自定義URL處理程序嗎?或者我應該只註冊一個Java,使用

URL.setURLStreamHandlerFactory(...) 

問候。

回答

0

我不認爲有一種方法可以在commons httpclient中執行此操作。它也沒有什麼意義,畢竟它是一個HTTP客戶端,而「media:///squishy.jpg」不是HTTP,所以實現HTTP協議的所有代碼都可能無法使用。

URL.setURLStreamHandlerFactory(...) 

可能是要走的路,但您可能需要手動完成很多協議編碼,具體取決於您的「媒體」協議。

1

我們這樣做是這樣的:

org.apache.commons.httpclient.protocol.Protocol.registerProtocol("ss-https", 
    new Protocol("ss-https", 
    (ProtocolSocketFactory)new EasySSLProtocolSocketFactory(), 443));