http请求将不会执行

时间:2016-11-24 15:29:52

标签: javascript node.js

我是JS和Node中的一个真正的菜鸟,我正在尝试从REST API接收JSON视图。当我独立运行http.request它工作得很好,但是当我开始添加模块和渲染雄蕊时,我无法获得http请求函数来执行。

当我在调试中运行它时,它只是跳到结束语句。我无法弄清楚原因。

任何帮助都会非常感谢TIA。

var http = require('http');

module.exports = function() {

    var options = {
        host: '41.193.214.130',
        port: 2510,
        path: '/eiftidemo/clt_list',
        method: 'GET'
    };

    var clientsDatag;

    http.request(options, function(res) {
        var body = '';
        //none of these statemnst excecute

        res.on('data', function(chunk) {
            body += chunk;
        });

        res.on('end', function() {
            var clientsData = JSON.parse(body);

            var clientsDatag = clientsData;
            // this stament doesn't execute either
            debugger;

        });
    }).end();
    debugger;
    res.render('listlxr', {
        details: clientsDatag
    });
};

这是调用脚本:

var express = require('express');
var bodyParser = require('body-parser');
var tweetList = require('./tweet-list');
var clientList = require('./lxr-clients')
var app = express();

app.set('view engine', 'jade');
app.use(bodyParser.urlencoded({
    extended: false
}))


app.get('/', function(req, res) {
    res.render('index');
});

app.post('/get_tweets', function(req, res) {
    var screen_name = req.body.handle;

    var tweets = tweetList(res, screen_name);
});

app.get('/get_clients', function(req, res) {

    var clientd = clientList(res, req);
});

var server = app.listen(3000, function() {
    console.log('Our App is running at http://localhost:3000');
});

非常感谢任何可以提供帮助的人

2 个答案:

答案 0 :(得分:1)

app.get('/get_clients', function(req, res) {

    var options = {
        host: '41.193.214.130',
        port: 2510,
        path: '/eiftidemo/clt_list',
        method: 'GET'
    };

    http.request(options, function(details) {
        res.render('listlxr', {
            details: details
        });
    });

});

答案 1 :(得分:0)

尝试添加错误处理程序并查看是否有任何内容:

var request= http.request(options, function(res) {...});

request.on('error', function(err){
     // Handle error
});
相关问题