Solicitud adecuada con asíncrono / espera en Node.JS
En mi programa hagoasync
llame a mi función desde otro módulo API:
var info = await api.MyRequest(value);
Código del módulo:
var request = require("request")
module.exports.MyRequest = async function MyRequest(value) {
var options = {
uri: "http://some_url",
method: "GET",
qs: { // Query string like ?key=value&...
key : value
},
json: true
}
try {
var result = await request(options);
return result;
} catch (err) {
console.error(err);
}
}
Sin embargo, la ejecución regresa de inmediatoresult
y por lo tantoinfo
contiene objeto de solicitud y cuerpo de solicitud -info.body
me gustakey=value&...
, no se requiere cuerpo de respuesta.
¿Qué estoy haciendo mal? ¿Como arreglar? Lo que es apropiadorequest
uso conasync
, o solo funciona correctamente con promesas como las mencionadas aquí:Por qué esperar no funciona para el módulo de solicitud de nodo? El siguiente artículo mencionado es posible:El dominio de Async aguarda en Node.js.