gpt4 book ai didi

javascript - 异步 http 请求、node.js 模块和变量

转载 作者:太空宇宙 更新时间:2023-11-04 01:56:09 25 4
gpt4 key购买 nike

我目前正在努力将变量值从一个 Node.js 模块获取到另一个模块。这是我当前的问题:

我正在通过 https 请求从 REST API 获取数据:

// customrequest.js

sendRequest( url, function( data, err ) {
if(err) {
console.log('--- Error ---');
console.log( err );
}
else {
console.log('--- Response ---');
console.log(data);
// output: data
return data;
}
module.exports = { sendRequest }

还有我的index.js 文件:

// index.js
let sendRequest = require('./customrequest');
let req;
req = sendRequest('google.com');
console.log(req);
// output: undefined
// how can I get the variable set, when request is getting data in response?

我完全理解,对 API 的请求需要一些时间才能得到响应。一种解决方案是,我将所有内容放入一个 js 文件中。但随着时间的推移,我的项目会变得越来越大,模块化方法是我的首选解决方案。关于如何解决这个问题有什么建议吗?

最佳答案

Node 针对这种情况使用回调。尝试这样的事情:

// customrequest.js

sendRequest(url, callback)
module.exports = { sendRequest }

// index.js
let sendRequest = require('./customrequest');
let req = sendRequest('google.com', function (data, err) {
if (err) {
//handle error here
}
console.log(data);
};
// output: undefined
// how can I get the variable set, when request is getting data in response?

关于javascript - 异步 http 请求、node.js 模块和变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47914736/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com