服务器响应结束时执行代码 – Node.js
感谢您花时间阅读我的问题!
我是Node.js的新手,我试图弄清楚如何在服务器响应结束时将数组元素输出到控制台。
这是代码:
var http = require('http'); http.get(process.argv[2], function (response) { response = response.setEncoding('utf8'); var data = []; response.on('data', function (collect) { data.push(collect); }); response.on('error', function(err) { console.log(err); }); });
在哪里以及如何使用console.log()
方法使用response.end事件来打印出data
数组的所有元素?
非常感谢您的帮助!
答案正在我脸上凝视着! 我不需要调用response.end
方法,而是需要调用response.on
方法并将end
事件传递给它。
这是什么对我有用:
response.on('end',function(){ for (var i = 0; i < data.length; i++) { console.log(data[i]); } });
完整代码:
var http = require('http'); http.get(process.argv[2], function (response) { response = response.setEncoding('utf8'); var data = []; response.on('data', function (collect) { data.push(collect); }); response.on('error', function(err) { console.log(err); }); response.on('end',function(){ for (var i = 0; i < data.length; i++) { console.log(data[i]); } }); });