Estoy tratando de enviar un mensaje de publicación al servidor de autenticación y estoy usando postforobject. Cuando ejecuto el programa, aparece el error "Excepción en el subproceso "principal" org.springframework.web.client.HttpClientErrorException: 401 null"
RestTemplate rest = new RestTemplate(); String responseEntity; String uri = "http://..."; responseEntity = rest.postForObject(uri, null, String.class); System.out.println(responseEntity);También lo intenté
responseEntity = rest.postForObject(uri, "", String.class);Mismo resultado, no funcionó.
Cuando uso Simple Rest Client funciona, ingrese la descripción de la imagen aquí
¿Alguna idea?
401 null probablemente significa que el servidor esperaba alguna forma de autenticación pero no se presentó ninguna (es decir, no hay encabezado de autorización en su solicitud)
La explicación más probable es: el cliente REST simple (re)utiliza las cookies de Chrome. Si se autenticó previamente en su servicio mediante un formulario de inicio de sesión, Simple Rest Client reutilizará la cookie JSESSIONID. Para detectar eso, simplemente presione F12 y abra la pestaña de red de su depurador. Para su información, hay otros complementos del navegador, por ejemplo, "Advanced REST Client" , que le brindan más visibilidad sobre lo que se envía al servidor.
Cuando envía una solicitud usando restTemplate, no tiene acceso a la cookie de sesión (lo cual es de esperar). Debe publicar en un URI que permita el acceso anónimo o proporcionar algún tipo de autenticación en la solicitud. Si necesita ayuda adicional, publique su configuración de seguridad.