我有两个猫鼬收藏品.第一个存储地点列表,第二个是访问地点.我的节点代码经过并试图获取每个地方的访问列表并构建一个我输出为JSON的字符串.第一个查询在第二个查询开始之前完成 - 有没有办法使它们同步运行?
我开始学习node.js。我在这里遇到问题。我正在呼叫天气服务,该服务返回JSON(下面的网址)。
http://api.wunderground.com/api/Your_key/conditions/q/CA/San_Francisco.json
我想在HTML页面上显示api的结果。
我已经编写了以下代码(getInfo模块)来检索并返回JSON。
var fbResponse;
module.exports = function (url) {
var http=require('http');
http.get(url, function(res) {
var body = '';
res.on('data', function(chunk) {
body += chunk;
});
res.on('end', function() {
fbResponse = JSON.parse(body);
console.log("Got response: ", fbResponse.response);
});
}).on('error', function(e) {
console.log("Got error: ", e);
});
return fbResponse;
};
Run Code Online (Sandbox Code Playgroud)
因此,要使用此模块,我创建了一个test.js文件,如下所示:
var relay = require('./getInfo');
var url = 'http://api.wunderground.com/api/Your_key/conditions/q/CA/San_Francisco.json';
var response;
var x=relay(url);
console.log (x);
Run Code Online (Sandbox Code Playgroud)
输出如下:
undefined // console.log(x) from test.js
Got response: { version: '0.1',
termsofService: 'http://www.wunderground.com/weather/api/d/terms.html',
features: { conditions: …Run Code Online (Sandbox Code Playgroud)