son respuesta que métodos los listado estado errores error códigos codigos codigo java apache-httpclient-4.x

java - respuesta - HttpClient obtiene el código de estado



métodos y códigos de errores http (3)

Usando Apache HttpClient 4.1.3 e intentando obtener el código de estado de un HttpGet :

HttpClient client = new DefaultHttpClient(); HttpGet response = new HttpGet("http://www.example.com"); ResponseHandler<String> handler = new BasicResponseHandler(); String body = client.execute(response, handler);

¿Cómo extraigo el código de estado (202, 404, etc.) del body ? O, si hay otra forma de hacerlo en 4.1.3, ¿qué es?

Además, supongo que una respuesta HTTP perfecta / buena es HttpStatus.SC_ACCEPTED pero también me gustaría confirmarla. ¡Gracias por adelantado!


¿Qué tal esto?

HttpResponse response = client.execute(getRequest); // Status Code int statusCode = response.getStatusLine().getStatusCode(); ResponseHandler<String> responseHandler = new BasicResponseHandler(); // Response Body String responseBody = responseHandler.handleResponse(response);


Lo hago como:

HttpResponse response = client.execute(httppost); int status = response.getStatusLine().getStatusCode();

Sin embargo, para obtener el cuerpo de reposo como una Cadena al no usar un Manejador de respuestas lo obtengo primero como InputStream:

InputStream is = response.getEntity().getContent();

y luego conviértalo en una cadena (maneras de hacerlo here )


EDITAR:

Prueba con:

HttpResponse httpResp = client.execute(response); int code = httpResp.getStatusLine().getStatusCode();

El HttpStatus debe ser 200 ( HttpStatus.SC_OK )

(¡He leído demasiado rápido el problema!)

Prueba con:

GetMethod getMethod = new GetMethod("http://www.example.com"); int res = client.executeMethod(getMethod);

¡Esto debería funcionar!