我是node.js的新手,所以我会尽力在这里解释一下这个问题。如果需要任何证词,请告诉我。
在我的node.js应用程序中,我正在尝试获取代码(从第一次调用API的响应中获取),并使用该代码向另一个API发出第二个请求(GET请求)服务。第一个电话的回拨网址为/pass
。但是我从第二次通话的服务中得到empty response
。
我的理解是,在第一次调用回调之后,app.get('/pass', function (req, res)..
中的函数被调用并发送GET
请求。我在这做错了什么?非常感谢提前!
以下是我尝试从node.js服务器发出GET请求并收到空响应的部分:
app.get('/pass', function (req, res){
var options = {
url: 'https://the url that I make GET request to',
method: 'GET',
headers: {
'authorization_code': code,
'Customer-Id':'someID',
'Customer-Secret':'somePassword'
}
};
request(options, function(err, res, body) {
console.log(res);
});
});
答案 0 :(得分:2)
我对你的问题感到有点困惑,只是试着掩盖我认为你正在寻找的东西。
app.get('/pass', (req, res) => {
res.send("hello!"); // localhost:port/pass will return hello
})
现在,如果您在调用/ pass端点时尝试从请求库调用get请求,则事情仍然类似。首先,我认为您可以删除这种方法' :' GET'密钥和值,因为它们不是必需的。现在代码将与之前的代码大致相同,除了响应。
app.get('/pass', (req, res) => {
var options = {
url: 'https://the url that I make GET request to',
headers: {
'authorization_code': code,
'Customer-Id':'someID',
'Customer-Secret':'somePassword'
}
};
request(options, function(err, res, body) {
// may need to JSONparse the body before sending depending on what is to be expected.
res.send(body); // this sends the data back
});
});