node.js - 如何使用 node.js 在标头中传递 JWT 令牌来执行 GET 请求
问题描述
我一直在尝试向我的服务器发出 GET 请求,该服务器在端口 4000 上本地运行。
我生成一个 JWT 令牌并将其传递到标头中,如下所示
var request = require('request');
var options = {
'method': 'GET',
'url': 'localhost:4000',
'headers': {
'JWT': '<JWT PASTED HERE>',
'Content-Type': 'application/json'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
但我不断得到
{"errors":[{"title":"invalid_request","id":"Requesting stuff","meta":{"server-time":1591980353},"errorCode":"bad-request","status":400,"detail":"This JWT has invalid path parameter"}],"error_description":"This JWT has invalid path parameter","error":"invalid_request"}
我的 JWT 已正确创建,我在https://jwt.io/中进行了验证
是因为 node.js 中不推荐使用“请求”模块吗?
还有另一种方法可以实现以下目标吗?
解决方案
试试这个
var request = require('request');
var options = {
'method': 'GET',
'url': 'localhost:4000',
'headers': {
'Authorization': 'Bearer <JWT PASTED HERE>',
'Content-Type': 'application/json'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
或者
var options = {
'method': 'GET',
'url': 'localhost:4000',
'headers': {
'Authorization': 'JWT <JWT PASTED HERE>',
'Content-Type': 'application/json'
}
};
Bearer 或 JWT 取决于它在后端的定义方式
推荐阅读
- windows - 如何检查进程是否可以访问 Windows 中的安全对象
- python - 如何在嵌套循环中分配列表值?
- multithreading - 使用 AHK_H v2,如何让多个线程共享和更新同一个变量?
- nginx - 如何在 Centos 中禁用 ipv6
- excel - 如何在excel VBA中插入具有背景颜色和轮廓的形状
- javascript - Blazor - 将子内容添加为 Javascript 代码
- angular - 触发另一个事件时停止滚动事件
- java - 无法弄清楚如何使 for 循环代码具有最小值和最大值
- javascript - Firestore 承诺未解决
- javascript - 将 html 中的复选框单击同步到降价编辑器的内容