Node.JS把response.end()放到哪里

时间:2014-03-15 14:51:23

标签: javascript node.js http response

我正在开发一个简单的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()'。每个过程都需要一些时间,当所有进程都回显其文本时,我想“结束”。

我怎么能这样做? 我不知道我附上的代码是否足以帮助我。

0 个答案:

没有答案