我在使用Nodejs时遇到问题 我想要做的事情如下。我有一个API发送请求。当我从API获取响应时,我想将其发送到我的index.jade文件。我已经从我的API获得响应,但只能在控制台中响应。不在我的html文件(index.jade)中。如何从Nodejs中的自定义api获取对玉文件的响应
的代码如下:
app.js
app.get('/', function(req, res) {
var postData = '{'+
' "limit": "10",'+
' "page": 1,'+
' "filters": {'+
' "genre": [],'+
' "region": "",'+
'"prices": 2,'+
' "distance": 31,'+
' "longitude": "4.646219",'+
' "latitude": "52.387388",'+
' "eves": 1,'+
'"from_date": "17-12-2015",'+
'"end_date": "18-12-2014"'+
'}'+
'}';
var options = {
hostname: 'API url',
path: 'api path',
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Content-Length': postData.length,
}
};
var req = http.request(options, (res) => {
console.log(`STATUS: ${res.statusCode}`);
console.log(`HEADERS: ${JSON.stringify(res.headers)}`);
res.setEncoding('utf8');
res.on('data', (chunks) => {
console.log(`BODY: ${chunks}`);
var response = JSON.parse(chunks)
res.render('index',{
value: response
});
});
res.on('end',() => {
console.log('No more data in response.')
})
});
req.on('error', (e) => {
console.log(`problem with request: ${e.message}`);
});
res.on('data', function(chunk){
body += chunk;
});
res.on('end', function(){
var response = JSON.parse(body)
console.log(response)
console.log("Successful")
});
index.jade
p #{value}
注:我很新的节点JS。
与index.jade文件,你把相同的文件夹与app.js文件? 因为我看到你的代码:res.render('index',{ value:response }); – DinhNC
不,我没有那样做代码insinuate那。 –
我在代码中看到的是,这不是问题,因为我也发送了一个标题,它显示在右侧页面上。它可能是它的功能错误 –