Node.js 在节点中使用JWT进行授权

Node.js 在节点中使用JWT进行授权,node.js,authentication,token,Node.js,Authentication,Token,所以我一直在学习一门使用POSTMAN教授身份验证的课程,但我一直想知道它在使用浏览器的实际应用程序中是如何工作的。我们被教导使用res.header(“x-auth-token”,token)存储JWT令牌。然后,当我们尝试访问受保护的路由时,我们在POSTMAN头中手动添加令牌,并在服务器上获取带有req.header('x-auth-token')的令牌,并验证令牌 但在一个真正的应用程序中,我使用浏览器登录,它确实使用令牌设置了标题,但一旦我输入URL进入受限/认证的必需路径,比如/us

所以我一直在学习一门使用POSTMAN教授身份验证的课程,但我一直想知道它在使用浏览器的实际应用程序中是如何工作的。我们被教导使用res.header(“x-auth-token”,token)存储JWT令牌。然后,当我们尝试访问受保护的路由时,我们在POSTMAN头中手动添加令牌,并在服务器上获取带有req.header('x-auth-token')的令牌,并验证令牌

但在一个真正的应用程序中,我使用浏览器登录,它确实使用令牌设置了标题,但一旦我输入URL进入受限/认证的必需路径,比如/user/profile,它就会要求我重新登录。当我输入新的URL时,令牌是否未结转


如何获取令牌,使令牌在浏览器中一直保留到到期?

与使用POSTMAN在每个请求中手动添加令牌的方式类似,客户端应用程序需要处理(显然是与服务器端协调)将令牌发送到服务器的方式。它不会自动执行每个请求。您需要存储服务器返回的JWT令牌

如果您将JWT令牌存储在cookie中,则浏览器将在您每次发出请求时发送令牌。但也建议不要使用cookie。检查如何在客户端存储JWT令牌,以及如何在将来的每次请求中重复添加令牌,直到注销。还有一个刷新令牌的概念,用于在令牌过期时获取新令牌

查看以下博客以获取更多信息。你也可以在互联网上找到其他资源


您的问题不清楚,如果您需要使用令牌,您必须将其存储在浏览器中的某个位置,如
localStorage
,如果您想向应用程序中的所有请求提供令牌,请随时阅读
拦截器