如何在用户通过身份验证后发回的授权令牌存储在浏览器中,并且可以在其他路由的同一api中用于授权,直到令牌在注销后从用户的数据库中删除为止?
我使用了邮差。在Headers部分,我获得了授权令牌作为响应头。但是这一切如何在浏览器中的真实登录页面中起作用?
答案 0 :(得分:0)
一些介绍,
授权令牌通常是JWT,并且在服务器上使用某个密钥创建,像https://www.npmjs.com/package/jsonwebtoken这样的库主要用于NodeJ。可以使用Passport JS使用不同的策略,使其更安全,更开放用于第三方集成(如Google,FB等)。
现在你的问题,
当用户最初使用其有效凭据登录系统时,服务器会生成带有密钥的JWT令牌,并将其发送到响应头中。客户端(浏览器)将此令牌保存在cookie或本地存储中,并且对于下一个请求,在请求头中发送此令牌。服务器具有密钥,可以验证令牌的验证,并可以继续或拒绝请求。
理想情况下,应该使用在1小时内到期的令牌(取决于用例)左右,并且出于安全原因,不要使用非过期或长期到期令牌。
这大致是如何运作的,如果有任何疑问,请告诉我。
答案 1 :(得分:0)
您好,您可以查看基于oauth2-server的示例OAuth2,您可以在此处找到回购:https://github.com/gerardabsi/NodeJS-OAuth2
答案 2 :(得分:0)