用nodeJS返回Json

时间:2016-02-24 11:34:37

标签: javascript angularjs json node.js

我尝试使用Clah of clan API学习nodeJS和AngularJS <h1 class="sub2"> Smartphones </h1>

我的JSON api的回复被截断,我不知道如何得到完整的回复。

有我的app.js在节点上写作并表达:

h1.sub2

如果有人可以教一个角落:)

3 个答案:

答案 0 :(得分:1)

您的代码会立即将响应的第一个块发送回用户。您需要等到整个HTTP响应完成。尝试这样的事情:

app.get("/members", function(req, res) {
    var req = https.request(options, function(response){
    var httpResult = '';
    response.on('data', function (chunk) {          
        console.log('BODY: ' + chunk);
        httpResult += chunk;
    });         
    response.on('end', function() {
       res.send(httpResult);
    });
});

req.on('error', function(e) {
    console.log('problem with request: ' + e.message);
});

req.end();

});

每次调用数据事件时以及完成后我都会看到如何附加到var - 然后我发送输出。

答案 1 :(得分:1)

因为您使用send方法而不是write(发送非流式传输)。试试这个:

app.get("/members", function(req, res) {

    https.request(options, function(response){

        response.on('data', function (chunk) {          
            res.write(chunk);
        });         

        response.on('end', function () {          
            res.end();
        });         

    }).end();

});

答案 2 :(得分:0)

res是一个流,您只需将其传递给app.get("/members", function(req, res) { https.request(options, function(response) { response.pipe(res); }); });

即可
root