我正在开发一个调用REST API的Node.js命令行客户端。
我在调用未经过身份验证的获取和帖子方面没有任何问题,但在我通过身份验证并收到我的Bearer令牌后,我无法获得授权响应。
由于那里有很少的样本,我用以下内容简化了我的测试用途:
var options =
{
host: "localhost",
port: "62405",
path: "/api/Job",
method: 'GET',
headers:
{
Authorization: "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJVbml0VGVzdGVyQG12cHNpLmNvbSIsInJvbGUiOiJ1c2VyIiwiSkFNU1RlbmVudElkIjoiNDIiLCJXaW5kb3dzSWRlbnRpdHkiOiJVbml0VGVzdGVyQG12cHNpLmNvbSIsImlzcyI6Ik1WUFNJIiwiYXVkIjoiSkFNU0FEQ2xpZW50SWQiLCJleHAiOjE0MzEzOTY4NzEsIm5iZiI6MTQzMTM1MzY3MX0.iYYX3TjcJONKhbNDqxG2hNGFwxGV0zG2m3rJ1wqmzIw"
}
};
var callback = function (res) {
console.log(res.statusCode);
console.log(res.headers);
var str = "";
res.on("data", function(chunk) {
str += chunk;
});
res.on("end", function() {
console.log(str);
});
};
var request = require('http').request(options, callback);
request.end();
我没有收到回复,而是收到401回复消息“此请求已拒绝授权。”
同样,这是我的可扩展代码的简化版本......但是我们将非常感谢任何建议。
澄清,当我使用Postman并手动将令牌放入Authentication头时,我会收到授权(和预期的)响应。