从节点访问JWT的最佳方式是什么?
What is the best way to access the JWT from node?
我已经使用Node.js实现了JWT身份验证。当用户登录时,Node.js签名/创建JWT并将其发送回来。之后,它被存储在localStorage中。现在,这可能是我错的地方,但是…为了继续前进,我使用了express路由器,并且在路由器代码(显然是在节点级别)中,我希望能够访问令牌(在localStorage
中),以便我可以调用API以获取进一步的数据。然而,我刚刚意识到localStorage在客户端,节点/express/路由器不识别localStorage
。所以我被困住了。显然,我做了一些根本性的错误……我不需要从快速路由器文件中访问localStorage
。也许,我真的应该从客户端而不是从express路由器文件中调用API。
/方向的提示吗?
localstorage不是保存令牌的好方法。您应该将令牌保存在cookie中,并在需要时使用它。
的例子:
new Cookies(req,res).set('access_token',token,{
httpOnly: true,
secure: true // for your production environment
});
,然后读:
var token = new Cookies(req,res).get('access_token');
每次向服务器端发出API请求时,都需要发送存储在客户端的JWT。
https://jwt.io/introduction/向下滚动到部分JSON Web令牌是如何工作的? JWT应该在API调用的头中发送,格式为:Authorization: Bearer <token>
如何做到这一点取决于您将如何准确地将HTTP请求发送到API,但它应该在任何方面都相当简单。你可以在这个链接中找到如何在angular $http请求中添加header:https://docs.angularjs.org/api/ng/service/http美元
然后由每个经过身份验证的快递路由检查报头,将JWT拉出来,确保它是有效的,然后继续处理请求(如果JWT无效,则停止请求)。
- 在AngularJS应用程序中使用封装指令和路由的推荐方式是什么
- 在ng重复循环中显示条件内容的最佳方式是什么
- 在node.js中编写单元测试的最佳方式是什么
- 使用AJAX在Rails中提交动态表单的最佳方式是什么
- 使用Angular存储用户以前是否选中过复选框,然后再调用它的最佳方式是什么
- 在AngularJS中使用多个主题的最佳方式是什么
- 存储数据的最佳方式是什么,以便与jquery一起使用
- 为Google闭包类定义属性的首选方式是什么
- 用JavaScript随机给网页上的每个字母上色的最佳方式是什么
- 将JavaScript检测与MVC4显示模式集成的最佳方式是什么
- 正确的使用方式是什么.js与网络工作者
- 在客户端调整图像大小/裁剪图像的最佳方式是什么
- 大规模保存cookie的最佳方式是什么
- Vue.js中端到端(e2e)测试的正确方式是什么
- 在JavasciptMVC中存储常量值的最佳方式是什么
- 在angular js中,每次应用程序进入状态时,重新加载状态的最佳方式是什么
- 在项目中组织CSS/JavaScript的最佳方式是什么
- 在JavaScript中,最紧凑、最优雅、最高效的四舍五入方式是什么
- Angular:将对象存储在服务中以在视图中显示和将crud函数存储到服务器的最佳方式是什么
- Java开发人员在不编写Javascript的情况下生成Javascript的最佳方式是什么