La solicitud GET funciona en Postman pero no funciona como código.
Estoy haciendo una petición usando Postman y funciona para mí. Pero cuando presiono el botón de generación de código y selecciono javascript – XHR, no funciona. Aparentemente no funciona y no conozco la razón.
Aquí está el código que Postman genera para hacer la llamada xhr:
var data = JSON.stringify({
“login”: “Baldan”,
“password”: “Hero”
});
var xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener(“readystatechange”, function() {
if(this.readyState === 4) {
console.log(this.responseText);
}
});
xhr.open(“GET”, “localhost:6001/usuarios/619420df977695930002adb6”);
xhr.setRequestHeader(“token”, “bearer – eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJfaWQiOiI2MTk0MjBkZjk3NzY5NTkzMDAwMmFkYjYiLCJsb2dpbiI6IkJhbGRhbiIsInJvbCI6IkNMSUVOVEUiLCJtb3ZpZGEiOiJBQkNERUYiLCJpYXQiOjE2Mzg2NTg3NDd9.9ebMdHDgH45DjA1G5D4KZVqaOTU0GFcu47alVjms2KgkzSdXFTN0DxjCSBzOYl9G1KxkmWNEJHDUhFsdid-SQQ”);
xhr.setRequestHeader(“Authorization”, “Bearer eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJfaWQiOiI2MTk0MjBkZjk3NzY5NTkzMDAwMmFkYjYiLCJsb2dpbiI6IkJhbGRhbiIsInJvbCI6IkNMSUVOVEUiLCJtb3ZpZGEiOiJBQkNERUYiLCJpYXQiOjE2Mzg4MTQ5NTd9.B4Cv0TzM0v416jIzTxSm6Ix3kNNE-AJ-W9BWG-N6o4c_WuzsNQuyFDDLBaB8k049lJuSxiZbyNsh2Y41ViaRVw”);
xhr.setRequestHeader(“Content-Type”, “application/json”);
xhr.send(data);
La consola muestra una cadena vacía.
Muchas gracias por tu ayuda.
¿Alguien sabe por qué la ejecución de este código no funciona?
davy.ai
Podría haber varias razones por las cuales el código generado por Postman no funciona. Aquí hay algunas sugerencias:
xhr.open()
sea correcta y que el servidor esté en ejecución enlocalhost:6001
. Si el servidor está en ejecución en un puerto diferente, actualice la URL en consecuencia.xhr.setRequestHeader("Authorization", "Bearer ...")
sea válido y no haya expirado. Si el token ha expirado, genere un nuevo token y actualice el código.Content-Type
coincida con el tipo de datos que se envían en el métodoxhr.send()
. En este caso, el encabezadoContent-Type
se establece enapplication/json
, lo que indica que el servidor espera datos en formato JSON. Si el servidor espera un tipo de contenido diferente, actualice el encabezadoContent-Type
en consecuencia.curl
oPostman
para descartar cualquier problema en el lado del servidor.