我正在尝试从节点js向外部api发出GET请求并表达js。
我正在使用请求模块发出GET请求 -
在请求的选项中 -
const options = {
url: 'https://externalP_api_url/api/1/balance',
method: 'GET',
headers: {
'Content-Type': 'application/json'
}
};
我需要根据api文档中的示例设置-u参数。他们使用curl发出请求
curl -u keyid:keysecret https://externalP_api_url/api/1/balance
问题是我无法在我的请求的选项中设置-u keyid:keysecret我已经尝试将它像查询字符串一样放在标题中但是我得到了401并且根据api的文档意味着keyid: keysecret参数丢失。
我已经尝试了卷曲并且它有效,所以我不是从api的结尾,而不是因为我不会从https doamain发送,因为我会得到403响应。
答案 0 :(得分:1)
查看https://curl.trillworks.com/#node
将curl转换为node.js时,通常可以很好地指出正确的方向。根据您的curl命令,它建议使用以下代码:
var request = require('request');
var options = {
url: 'https://externalP_api_url/api/1/balance',
auth: {
'user': 'keyid',
'pass': 'keysecret'
}
};
function callback(error, response, body) {
if (!error && response.statusCode == 200) {
console.log(body);
}
}
request(options, callback);