【发布时间】:2017-12-22 03:39:35
【问题描述】:
我目前正在努力将变量值从一个 node.js 模块获取到另一个模块中。这是我目前的问题:
我正在通过 https-request 从 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 文件中。但随着时间的推移,我的项目会变得越来越大,模块化方法是我的首选解决方案。有关如何解决此问题的任何建议?
【问题讨论】:
-
我遇到过,不是modules.export的问题,而是请求延迟返回的问题。如何解决?
-
http-request 方法在哪里?顺便说一句,您必须使用回调来记录来自 REST API 请求的传入结果。
-
sendRequest( url, function( data, err ) ... 我只是为了可读性而命名它在这里不同。它基本上是用 node-fetch (fetch() ...) 完成的。
标签: javascript node.js node-modules