Ho appena iniziato a utilizzare la libreria HTTP Client di Apache e ho notato che non esisteva un metodo incorporato per ottenere la risposta HTTP come stringa. Sto solo cercando di ottenerlo come String in modo che possa passarlo a qualsiasi libreria di analisi che sto usando.Qual è il modo consigliato per ottenere la risposta HTTP come stringa quando si utilizza il client HTTP di Apache?
Qual è il modo consigliato di ottenere la risposta HTTP come stringa? Ecco il mio codice per fare la richiesta:
public String doGet(String strUrl, List<NameValuePair> lstParams) {
String strResponse = null;
try {
HttpGet htpGet = new HttpGet(strUrl);
htpGet.setEntity(new UrlEncodedFormEntity(lstParams));
DefaultHttpClient dhcClient = new DefaultHttpClient();
PersistentCookieStore pscStore = new PersistentCookieStore(this);
dhcClient.setCookieStore(pscStore);
HttpResponse resResponse = dhcClient.execute(htpGet);
//strResponse = getResponse(resResponse);
} catch (ClientProtocolException e) {
throw e;
} catch (IOException e) {
throw e;
}
return strResponse;
}
questa risposta è la strada da percorrere per HttpClient. La maglia Apache è, a mio parere, molto più semplice da utilizzare rispetto a HttpClient. –
@Paul: Non sono sicuro di cosa intendi con "Apache Jersey". Non c'è nulla di simile nel progetto Apache. ["Jersey"] (http://jersey.java.net) è l'implementazione di riferimento Sun/Oracle dell'API JAX-RS che non è affatto un client HTTP. – BalusC
scusa, intendevo la maglia sole/oracolo. contiene un client http con un'API più fluente. –