开发环境创建分类时出现“jwt must be provided”错误求助
解决提交分类时的"jwt must be provided"错误
问题核心
提交创建分类的请求时,接口的认证中间件requireSignIn无法获取到JWT令牌,导致jsonwebtoken库抛出jwt must be provided错误,请求被拦截,无法执行后续业务逻辑。
错误栈
at module.exports [as verify] (C:\Users\AMANULLAH\Desktop\shopping app\backend\node_modules\jsonwebtoken\verify.js:60:17) at requireSignIn (C:\Users\AMANULLAH\Desktop\shopping app\backend\middlewares\authmiddleware.js:9:28) at Layer.handle [as handle_request] (C:\Users\AMANULLAH\Desktop\shopping app\backend\node_modules\express\lib\router\layer.js:95:5) at next (C:\Users\AMANULLAH\Desktop\shopping app\backend\node_modules\express\lib\router\route.js:144:13) at Route.dispatch (C:\Users\AMANULLAH\Desktop\shopping app\backend\node_modules\express\lib\router\route.js:114:3) at Layer.handle [as handle_request] (C:\Users\AMANULLAH\Desktop\shopping app\backend\node_modules\express\lib\router\layer.js:95:5) at C:\Users\AMANULLAH\Desktop\shopping app\backend\node_modules\express\lib\router\index.js:284:15 at Function.process_params (C:\Users\AMANULLAH\Desktop\shopping app\backend\node_modules\express\lib\router\index.js:346:12) at next (C:\Users\AMANULLAH\Desktop\shopping app\backend\node_modules\express\lib\router\index.js:280:10) at Function.handle (C:\Users\AMANULLAH\Desktop\shopping app\backend\node_modules\express\lib\router\index.js:175:3)
错误根源是
authmiddleware.js第9行的requireSignIn中间件调用jsonwebtoken的验证方法时,没有获取到JWT令牌,导致请求被拦截,无法进入分类创建的业务逻辑。
解决步骤
- 检查前端请求头,确认是否携带
Authorization字段,格式必须为Bearer <用户登录后获取的JWT令牌> - 确认用户已完成登录流程,且获取的JWT令牌未过期(可通过jwt.io解析验证)
- 查看
authmiddleware.js中requireSignIn的实现,确认它读取JWT的位置(比如是否从req.headers.authorization提取),确保前端传参位置与后端逻辑匹配 - 临时排查时,可先注释创建分类接口的
requireSignIn中间件,确认接口业务逻辑正常后再重新接入认证验证
内容的提问来源于stack exchange,提问作者AMAN ULLAH
相关产品推荐
相关产品推荐

