Java Android HttpURLConnection cómo obtener la respuesta 401

Estoy creando una aplicación de Android, que se conectará a un servidor web mediante la autenticación xauth. Mi problema es que no puedo obtener respuesta si el servidor devuelve 401, lo que causa una excepción de Java.

Necesito esa respuesta para saber qué estoy haciendo mal.

En primer lugar, ¿HttpURLConnection es bueno para este tipo de cosas? En segundo lugar, ¿cómo puedo obtener una respuesta de todos modos?

URL u_rl = new URL(url);
    final HttpURLConnection connection =
        (HttpURLConnection) u_rl.openConnection();

    connection.setRequestMethod(method);

    if (authorization != null) {
        connection.setRequestProperty("Authorization", authorization);
    }
    final byte[] body = parameters.getBytes();

        connection.setRequestProperty(
            "Content-Length", Integer.toString(body.length));
        connection.setDoOutput(true);
        connection.connect();
        final OutputStream output = connection.getOutputStream();
        output.write(body);
        output.flush();
        System.out.println(connection.getResponseCode());
        if (connection.getResponseCode() != 200) {
            result.put("error", connection.getResponseCode()+"");
            return null;
        }

        String out = IOUtils.toString(connection.getInputStream());

Sé por qué obtengo 400 u otro código de respuesta, el problema es que el usuario no sabe por qué. El servidor me devuelve un error en JSON y me gustaría obtener ese código JSON incluso si el código de respuesta no es 200

Respuesta 1

Hola, estoy tratando de leer un valor de hoja de Excel con el HSSFCell. Mi excelente shhet consiste en 4 columnas. Fecha, Nombre, Hora de entrada y Hora de salida. en mi bucle he dado .. HSSFRow fila = (HSSFRow) ...

Supongamos que tenemos la siguiente definición de tipo de esquema xml: <xsd: simpleType name = "StateType"> <xsd: restriction base = "xsd: string"> <xsd: enumeration value = "California" /> <xsd: ...

Normalmente tenemos el siguiente código cuando se trata de agrupación de conexiones: conexión c = pool.borrow (); intente {business-logic-using-connection (c); } catch (connectionException e) {...

Actualmente estoy trabajando en un juego de supervivencia en 2D y quiero generar mi propio problema de terreno personalizado, ¡no sé cómo! Quería hacerlo similar a Minicraft (no Minecraft) donde es plano al azar ...