Node.js:如何关闭与API的“ https”连接?

时间:2018-12-15 19:04:33

标签: node.js https

我将如何强制关闭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}中终止连接,以便可以将数据写入文件中。

0 个答案:

没有答案
相关问题