Javascript Request.JS和Node.JS数据问题

Javascript Request.JS和Node.JS数据问题,javascript,node.js,Javascript,Node.js,我是Node的新手,我正在开发一个应用程序,它使用Request.JS从私有API中提取数据。我需要数据显示在我的一个视图中。目前,我的一条路线中需要并定义了请求,如下所示: var models = require('../models');// Required for sequelize var express = require('express');// Required for the Express framework var router = express.Router();

我是Node的新手,我正在开发一个应用程序,它使用Request.JS从私有API中提取数据。我需要数据显示在我的一个视图中。目前,我的一条路线中需要并定义了请求,如下所示:

var models  = require('../models');// Required for sequelize
var express = require('express');// Required for the Express framework
var router = express.Router();
var request = require('request');// For requesting API data

router.get('/', function (req, res) {
        request( // Request from API
        'http://PrivateAPI.com:8080/reports/22?type=0&key=privatekey', 
        function (error, response, body) {
        if (!error && response.statusCode == 200) {
            console.log(body) // Print the return of the api call.
        }
      })
    models.User.findAll({ // $$$-Define User DB call. 
      }).then(function(users) {
    res.render('index', { 
      title: 'Project Insight',
      users: users,
      request: request
    });
  });
})

运行时,我可以在控制台中看到数据的输出,但我想知道在其中一个视图中显示数据的最佳方式。还有,我的路线上应该有这个吗?我迷路了,谢谢您的帮助。

首先,当前代码存在一些资源依赖性问题,因为私有API的响应在渲染时可能不可用。我只是将数据库调用和后续操作移动到私有服务请求处理程序。对于实际答案:只需将更多数据传递给渲染操作即可:

router.get('/', function (req, res) {
  request( // Request from API
      'http://PrivateAPI.com:8080/reports/22?type=0&key=privatekey', 
      function (error, response, body) {
        if (!error && response.statusCode == 200) {
          console.log(body);
          // response ok, continuing
          models.User.findAll({ // $$$-Define User DB call. 
            }).then(function(users) {
          res.render('index', { 
            title: 'Project Insight',
            users: users,
            request: request,
            body: body // <--
          });
        } else {
          // handle error
        }
      });
});
在视图/index.ejs中,只需使用变量

<!DOCTYPE html>
<html>
  ...
  Using <%= body %>, properties are also available if applicable ( <%= body.attr1 %>, <%= body.attr2 %>, ...) 
  ...
</html>

您需要编写索引视图,从该私有服务获取响应。您使用的模板呈现引擎是什么?EJS嵌入式Javascript