我正在尝试使用Node.JS应用程序来发出和接收API请求。它使用Axios对其接收的API调用接收的数据向另一个服务器发出get请求。第二个片段是脚本从调用中返回数据的时间。它实际上会接收并写入控制台,但不会在第二个API中将其发送回去。
function axiosTest() {
axios.get(url)
.then(function (response) {
console.log(response.data);
// I need this data here ^^
return response.data;
})
.catch(function (error) {
console.log(error);
});
}
…
axiosTestResult = axiosTest();
response.json({message: "Request received!", data: axiosTestResult});
我知道这是错误的,我只是想找到一种使它起作用的方法。我似乎只能从中获取数据的唯一方法是通过console.log,这对我的情况没有帮助。
从axiosTest
函数中的axios调用返回promise ,然后在使用另一个调用它时从promise中获取值.then
function axiosTest() {
return axios.get(url).then(response => {
// returning the data here allows the caller to get it through another .then(...)
return response.data
})
}
axiosTest()
.then(data => {
response.json({ message: 'Request received!', data })
})
.catch(err => console.log(err))
我还建议您阅读有关诺言如何工作的更多信息:https : //developer.mozilla.org/en-
US/docs/Web/JavaScript/Guide/Using_promises
问题内容: 如何从AsyncTask中获取数据?我的MainActivity正在调用触发AsyncTask的DataCall.getJSON函数,但是我不确定如何将数据返回到原始Activity。 调用DataCall的MainActivity应该返回一个字符串并将其保存在 数据通话: 问题答案: 对我来说,关键是创建一个名为URLWithParams的类或其他类,因为AsyncTask将只允许发
我正在尝试使用Node.JS应用程序发出和接收API请求。它使用Axios向另一台服务器发出get请求,并从它接收的API调用中接收数据。第二个代码段是脚本从调用返回数据的时间。它实际上会将其写入控制台,但不会在第二个API中将其发送回。 ... 我知道这是错误的,我只是想找到一种方法让它发挥作用。我能从中获取数据的唯一方法似乎是通过console.log,这对我的情况没有帮助。
问题内容: 我需要兑现承诺,以便可以通过封闭函数将其返回。我知道,由于正常的JavaScript范围,我可能无法按照编码的方式进行操作。有什么办法可以做到吗? 位于#1 的 console.log 会生成正确的数据。 console.log #2总是产生’a’; 任何指针将不胜感激。 问题答案: 许诺背后的基本原则之一是它是异步处理的。这意味着您无法创建承诺,然后立即在代码中同步使用其结果(例如,
C++ 数组 C++ 不允许返回一个完整的数组作为函数的参数。但是,您可以通过指定不带索引的数组名来返回一个指向数组的指针。 如果您想要从函数返回一个一维数组,您必须声明一个返回指针的函数,如下:int * myFunction() { . . . } 另外,C++ 不支持在函数外返回局部变量的地址,除非定义局部变量为 static 变量。 现在,让我们来看下面的函数,它会生成 10 个随机数,并
现在我们已经学习了带返回值的函数,我来告诉你一个秘密:main函数并非真的应该是一个void函数。main应该返回一个整数: int main () { return 0; } 通常,main的返回值为0,它表明程序成功执行。出错时一般返回-1,或其他的用以指明发生了哪种错误的值。 当然,你可能想知道这个值返回给谁了,因为我们自己从来没有调用过main。其实是这样,当系统执行程序时,它通过调
我正在等待(从USSD请求中)检索一个值,以便返回它(getUSSD):