我正在开发一个简单的NODE.JS应用程序。首先,我使用http模块创建一个httpServer。然后我将请求路由到requestsHandlers.js页面。 'Response'参数来自httpServer的创建。 Process1,process2和process3应该写一个页面的答案。这是此应用程序的目标,即process1,process2和process3编写其各自的文本。
requestHandlers.js
var process1 = require("./process1");
var process2 = require("./process2");
var process3 = require("./process3");
function iniciar(response) {
console.log("Manipulador de petición 'iniciar' fue llamado.");
response.writeHead(200, {"Content-Type": "text/html"});
process1.fc1(response);
process2.fc2(response);
process3.fc3(response);
//response.end() //WHERE DO I PLACE IT?
}
正如您所看到的,响应参数被传递给process1.js,在解析一些数据后,它会回显一些信息。
process1.js
var request = require('request')
function fc1 (response){
var url = 'http://webpagethatreturnsJSONfile.com/'
//Download webpage data and parses it
request(url, function(err, resp, body) {
if (err)
throw err;
var jsonResult = JSON.parse(body);
response.write("Number:" + jsonResult.number + '');
//response.end() //WHERE DO I PLACE IT?
});
}
exports.fc1 = fc1;
重点是我不知道在哪里放'response.end()'。每个过程都需要一些时间,当所有进程都回显其文本时,我想“结束”。
我怎么能这样做? 我不知道我附上的代码是否足以帮助我。