Domanda

Voglio poter accedere a URL personalizzati con apache httpclient. Qualcosa del genere:

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

Posso in qualche modo registrare un gestore URL personalizzato? O dovrei semplicemente registrarne uno con Java, usando

URL.setURLStreamHandlerFactory(...)

Saluti.

È stato utile?

Soluzione

Non credo che ci sia un modo per farlo in httpclient comuni. Non ha nemmeno molto senso, dopo tutto è un client HTTP e " media: ///squishy.jpg" non è HTTP, quindi tutto il codice per implementare il protocollo HTTP probabilmente non può essere utilizzato comunque.

URL.setURLStreamHandlerFactory(...)

potrebbe essere la strada da percorrere, ma probabilmente dovrai fare molta codifica del protocollo a mano, a seconda del tuo protocollo "media".

Altri suggerimenti

Lo facciamo in questo modo:

 org.apache.commons.httpclient.protocol.Protocol.registerProtocol("ss-https", 
     new Protocol("ss-https",
     (ProtocolSocketFactory)new EasySSLProtocolSocketFactory(), 443));
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top