Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

237
Vistas
Express.JS Obtenga el código de estado de la solicitud POST

Necesito encontrar una manera de obtener una respuesta como resultado de una solicitud de publicación https. Lejos de lo que encontré, solo se proporciona en la función de devolución de llamada, que no incluye el resultado después de que los datos se escriben en la solicitud y finalizan como se muestra a continuación:

**Nota: el siguiente código estaría envuelto dentro de un método "app.post".

 const https = require("https"); var url = "https://someurl.com"; var options = {option1: "some option"} var jsonData = {data1: "some data"}; const request = https.request(url, options, function (repsonse) { // HERE THE STATUS CODE ONLY CAPTURES IF THE RESOURCE WAS AVAILABLE // NOT IF THE REQUEST WAS SUCCESSFUL console.log(response.statusCode); }); request.write(jsonData); request.end();

Después del código "request.end ()", necesito poder obtener el código de estado devuelto por la solicitud para determinar si la solicitud real fue exitosa. Me gustaría hacer algo como esto:

 if (response.statusCode !== 200) { res.sendFile(__dirname + "/failure.html"); } else { res.sendFile(__dirname + "/success.html"); }

La declaración if debe ejecutarse después de request.end() para determinar si la solicitud real fue exitosa. Esto es estándar para usar marcos API como Flask-Python, pero parece que no puedo encontrar una manera de detectar esto en express.js. Cualquier ayuda sería apreciada.

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

https.request funciona de forma asíncrona . Si la solicitud es exitosa o no, no se puede determinar sincrónicamente después de request.end() , sino solo en la función de devolución de llamada (donde puede evaluar response.statusCode ) o en el evento de error (si la solicitud no se pudo realizar en absoluto, por ejemplo, porque no se pudo acceder al servidor).

 const request = https.request(url, options, function (response) { console.log(response.statusCode); if (response.statusCode !== 200) res.sendFile(__dirname + "/failure.html"); else res.sendFile(__dirname + "/success.html"); }); request.on("error", function(err) { console.error(err); res.sendFile(__dirname + "/failure.html"); }); request.write(jsonData); request.end();
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda