我将如何强制关闭https请求,或者有更好的方法吗?
var https = require("https");
var fs = require("fs");
var option = {
hostname: "api.particle.io",
//port: 443,
path: "/v1/devices/events?access_token=2c118325fee700fd1bab888896450484ddce0812",
method: "GET"
};
var req = https.request(option, function(res){
var responseBody = "";
console.log("Response from server started");
console.log(`Server Status: ${res.statusCode}`);
console.log("Response Headers: %j", res.headers);
res.setEncoding("UTF-8");
res.once("data", function(chunk){
console.log(chunk);
});
res.on("data", function(chunk){
// console.log(`--chunk-- ${chunk.length}`);
console.log(chunk);
responseBody += chunk;
});
res.on("end", function(){
fs.writeFile("event_data.html", responseBody, function(err){
if(err){
throw err;
}
console.log("File Downloaded.");
});
});
});
req.on("error", function(err){
console.log(`problem with request: ${err.message}`);
});
req.end();
我是nodejs的新手。无论如何,我试图从api获取数据,但是连接永远不会关闭。我有兴趣获取前5秒的数据并将其保存到文件中。问题在于该程序总是在抓取一些块,从而使其陷入循环。计划是在{res.on}中终止连接,以便可以将数据写入文件中。