如何解决从节点获取获取响应文本
我对节点获取相当陌生,我正在执行一个简单的获取请求以获取我的邮递员集合列表。我能够获取响应文本并将其记录在函数中 但是当我将 responseText 返回到一个变量并记录它时,我得到一个空的结果,有人可以建议为什么吗?
const fetch = require("node-fetch");
async function getCollections() {
var myHeaders = new fetch.Headers();
myHeaders.append(
"X-Api-Key","<API-KEY>"
);
var requestOptions = {
method: "GET",headers: myHeaders,};
url = "https://api.getpostman.com/collections";
const requestResponse = await fetch(url,requestOptions);
const response = await requestResponse.text();
return response;
}
const result = getCollections();
console.log(result);
解决方法
看起来您在异步函数有机会返回已解决的承诺之前记录 result
。我可以想到两种方法来解决这个问题:
const fetch = require("node-fetch");
async function getCollections() {
var myHeaders = new fetch.Headers();
myHeaders.append(
"X-Api-Key","<API-KEY>"
);
var requestOptions = {
method: "GET",headers: myHeaders,};
url = "https://api.getpostman.com/collections";
const requestResponse = await fetch(url,requestOptions);
const response = await requestResponse.text();
return response;
}
getCollections().then(console.log);
或者在异步函数内部移动控制台日志。
const fetch = require("node-fetch");
async function getCollections() {
var myHeaders = new fetch.Headers();
myHeaders.append(
"X-Api-Key",requestOptions);
const response = await requestResponse.text();
console.log(response)
return response;
}
getCollections()
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。