成功登录后,用户将被重定向到SPA加载的主页。使用会话cookie与JWT一个坏主意?

时间:2017-07-26 05:16:47

标签: node.js express authentication jwt

我有一个快递+ postgres后端,我使用passport-facebook为FB oauth。

如果用户在/点击我的应用而没有localStorage中的有效令牌,则他们会被带到/login

我的/login页面(您熟悉的#34;继续Facebook"消息)是服务器呈现的(出于各种原因)。单击此按钮后,我会验证用户是否存在,并向他们发送初始JWT的会话cookie,或者创建新用户并向他们发送带有初始JWT的会话cookie。在这两种情况下,成功条件是它们被重定向到/并为SPA资产提供服务。

SPA的第一件事就是从会话cookie中取出JWT并将其放入localstorage中,然后删除cookie。

这是一种可怕的方法,还是在我的用例中有效?

1 个答案:

答案 0 :(得分:0)

您正在使用会话cookie作为在客户端上存储JWT的方法。这意味着您可以通过花费服务器资源来创建一个服务器会话,该会话将在到期之前保持打开状态

会话cookie无法从javascript中读取,所以我猜你向服务器请求获取JWT,对吗?

该过程似乎没有问题,但我认为您可以通过使用带有set-cookie标头的常规cookie直接在响应中直接发送JWT来优化它。 cookie将存储在客户端中,您可以直接访问它