Node.js使用来自Api的node-rest-client显示数据

时间:2015-09-22 21:16:13

标签: javascript node.js nodeapi node-rest-client

我是Node.js的新手,我遇到了小问题。我的api正在返回JSon,但我无法在数据或响应中看到JSon。 帮助高度关注。在此先感谢

router.get('/search/:id', function(req, res){client.get("http://localhost:3000/api/search/5600678e1c76b4680e0d6544", function(data, response){

        console.log(data);
        console.log(response);

res.render('test', {test: data,  user : req.user , title : 'Home'});
    });
});

2 个答案:

答案 0 :(得分:1)

编辑:我在这里理解你错了另一种使用npm模块request

的方法
var request = require('request');

router.get('/search/:id', function(req, res) {
  request('http://localhost:3000/api/search/5600678e1c76b4680e0d6544', function(error, response, body) {
    if (!error && response.statusCode == 200) {
      console.log(body)
      var data = body;
      res.render('test', {
        test: data,
        user: req.user,
        title: 'Home'
      });
    } else {
      res.end('Error: ' + error);
    }
  });
});

如果这不起作用,可能错误在localhost:3000上没有返回任何内容。

答案 1 :(得分:0)

当你这样称呼时:

console.log(data);

“data”是一个json格式化对象。

尝试使用它:

console.log(JSON.parse(data));

查看json对象。