禁用 cookie 时的护照会话管理
Posted
技术标签:
【中文标题】禁用 cookie 时的护照会话管理【英文标题】:Passport Session management when cookies are disabled 【发布时间】:2014-11-29 13:48:19 【问题描述】:我正在制作一个 Web 应用程序,其中 AgularJS 作为我的前端,Sails(NodeJS + Express) 作为我的后端。 我正在使用护照(本地护照)进行身份验证,在我在 Safari 中对其进行测试之前,一切似乎都很好。我注意到会话总是返回 null。
我正在使用护照会话进行授权,但我无法使用 req.session.passport 获取会话变量,因为它是空的。我发现我在 Safari 中禁用了 cookie。 这会破坏我的应用程序的授权。有没有办法让会话管理即使在浏览器中禁用 cookie 也能正常工作?
【问题讨论】:
【参考方案1】:cookies 的替代品是令牌。
令牌的一种流行实现是JSON Web Tokens (JWT)。有一个模块用于将它们与 Express 一起使用,称为 express-jwt 和一个 blog post 显示如何使用它。要与 Passport 集成,您可以使用 this SO answer 作为指南。
【讨论】:
以上是关于禁用 cookie 时的护照会话管理的主要内容,如果未能解决你的问题,请参考以下文章
Java Web之会话管理一: 使用Cookie进行会话管理