Controller 代码:
bina: function(req, res) {
var request = require('request');
request({
url: 'http://localhost:3000/bina/',
method: 'GET',
}, function(err, res, body) {
if (err) {
console.log(err);
} else {
var data = JSON.parse(res.body);
console.log(data);
res.render(data)
}
})
}
请求附带的数据看不到任何类似 res.view
或 res.render
的函数。
错误输出:
res.render(data)
^
TypeError: res.render is not a function
注意:
我可以通过 Web 服务通过 console.log(data)
查看数据。我使用 Sail.js。
最佳答案
这是你做错的事情:
您使用了相同的变量 (res) 名称两次。在 res.render 中,它采用最近范围内的那个。我已将 res => 重命名为 response,现在它应该可以工作了。
bina: function(req, res) {
var request = require('request');
request({
url: 'http://localhost:3000/bina/',
method: 'GET',
}, function (err, response, body) { // Changed the variable name
if (err) {
console.log(err);
}
else {
var data = JSON.parse(response.body);
console.log(data);
res.render(data)
}
})
}
希望它能解决您的问题。
关于javascript - 路由到 Node.js 请求收到的 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51493367/