你可能会说
这个JWT的逻辑我不太懂,帮我解释一下然后实现它。
一种登录凭证格式。
一种登录凭证格式。用户登录后服务器发一个加密字符串(token),之后每次请求带上它证明身份,服务器不用存 session。
生活类比
像游乐园手环——买票时给你戴上一个,之后玩每个项目刷手环就行,不用每次出示发票。
🎮 动手试试
关于「JWT」,以下哪个描述最准确?
你可以这样告诉 AI
帮我用 jsonwebtoken 实现登录:用户登录成功后签发 token,设 2 小时过期,中间件验证 token 有效性。
JWT 是 Token 的一种标准格式——Token 是通行证的统称,JWT 是其中一种带签名、自包含信息的实现规范,也是目前最常用的。
分布式系统的无状态认证
多个后端服务之间不需要共享 Session 存储,JWT 自包含用户信息,各服务独立验证签名即可识别用户身份。
和 AI 协作时
想让 AI 帮你实现 JWT 认证时,直接说「帮我写 JWT 登录流程:登录接口验证密码后签发 token(有效期 2h),再写一个 refresh 接口用 refreshToken 换新 token」。
传统单体 Session 应用
只有一个后端服务且用服务端渲染,Session + Cookie 方案更简单安全——token 存在服务端,可随时使其失效。
与用户认证无关的项目
如果你的应用不需要登录、所有功能公开访问,JWT 对你没有意义。
一种登录凭证格式。用户登录后服务器发一个加密字符串(token),之后每次请求带上它证明身份,服务器
像游乐园手环——买票时给你戴上一个,之后玩每个项目刷手环就行,不用每次出示发票。
和 AI 沟通时提到「用 JWT 做认证」,就是登录后发 token,之后请求头带 Authoriz