Trong chương trình của tôi, tôi làm async
gọi cho chức năng của tôi từ một mô-đun API:yêu cầu đúng với async/chờ đợi trong Node.js
var info = await api.MyRequest(value);
Mã Module:
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);
}
}
Thực hiện trả về ngay lập tức , tuy nhiên, result
và do đó info
chứa đối tượng yêu cầu và yêu cầu nội dung - info.body
như key=value&...
, không phải là nội dung phản hồi bắt buộc.
Tôi đang làm gì sai? Làm thế nào để khắc phục? Điều gì là thích hợp request
sử dụng với async
, hoặc nó chỉ hoạt động chính xác với những lời hứa như đã đề cập ở đây: Why await is not working for node request module? Bài viết sau đây đã đề cập là có thể: Mastering Async Await in Node.js.
'async' và 'tác await' trong nodejs 7 mới nhất xây dựng. vì vậy hãy chắc chắn rằng bạn đã xây dựng mới nhất của nodejs 7. Để biết thêm thông tin bạn có thể tham khảo liên kết này https://blog.risingstack.com/async-await-node-js-7-nightly – Aabid
@Aabid Tôi có Node.js 8.4 –