NodeJS HTTP GET请求

时间:2018-08-14 19:08:14

标签: node.js http

我正在尝试根据我正在运行的http服务器的响应来分配websocket URL。我知道服务器会接收并解释该请求,并且会发送响应,因为我已将其记录在服务器控制台上,但是我不知道为什么这没有将响应分配给变量“ customerWSURL”。这是我的代码:

var req = httpClient.get(ConfigServiceURL, function(response){
    response.on('data', function(data){
        customerWSURL = data;
    });
    response.on('end', function(){
        console.log('httpClient has closed.');
    });
});
req.end();

如果您需要更多代码,只需询问。我正在使用http库,因为https库由于某种原因未发送获取请求。

1 个答案:

答案 0 :(得分:0)

许多HTTP和HTTPS模块的功能是相当底层的。您需要分批接收响应数据,而不仅仅是提供一个在收到所有数据后立即执行的回调函数。您还需要手动解析响应数据。


var req = httpClient.get(ConfigServiceURL, function (response) {

    let data = '';

    response.on('data', function (chunk) {
        data += chunk;

    });

    response.on('end', function () {
        customerWSURL = data;
        console.log('httpClient has closed.');
    });

}).on('error', function (err) {
    console.log('Error: ' + err.message);
});

req.end();

我希望这会有所帮助。