登录
首页 >  文章 >  python教程

使用 Nginx 在 VPS 上部署的 Flask 应用程序中出现 @jwt_required() 错误

来源:dev.to

时间:2024-11-26 08:51:33 363浏览 收藏

欢迎各位小伙伴来到golang学习网,相聚于此都是缘哈哈哈!今天我给大家带来《使用 Nginx 在 VPS 上部署的 Flask 应用程序中出现 @jwt_required() 错误》,这篇文章主要讲到等等知识,如果你对文章相关的知识非常感兴趣或者正在自学,都可以关注我,我会持续更新相关文章!当然,有什么建议也欢迎在评论留言提出!一起学习!

使用 Nginx 在 VPS 上部署的 Flask 应用程序中出现 @jwt_required() 错误

大家好,

我在使用 Nginx 在 VPS 服务器上部署 Flask 应用程序时遇到问题。该应用程序在本地测试以及在 Heroku 上托管时都运行良好。但是,当部署在我的 VPS 上时,任何受 @jwt_required() 保护的路由都会抛出 422 错误

细节:

  • 服务器设置:

    • Ubuntu VPS
    • Nginx 作为反向代理
    • Gunicorn 运行 Flask 应用程序
    • Flask-JWT-Extend 用于 JWT 身份验证
  • 有效方法:

    • 所有没有 @jwt_required() 装饰器的 API 路由都可以完美工作。
    • 部署在 Heroku 上时,相同的应用程序可以按预期工作(即使使用 @jwt_required())。
  • 失败之处:

    • 在 VPS 设置上使用 @jwt_required() 装饰器的任何路由都会返回 422 错误
    • 删除@jwt_required()可以让路由正常工作。

我尝试过的事情:

  • 已验证 JWT 令牌是否在授权标头中正确传递。
  • 检查 SECRET_KEY 和令牌过期设置是否不匹配。
  • 确认应用程序使用正确的 ACCESS_TOKEN_EXPIRES 和算法。
  • 使用Postman 和curl 进行测试——没有区别。

我怀疑这可能与 Nginx 或 Gunicorn 配置有关,但我不知道是什么。它是否与服务器处理标头或 JSON 主体的方式有关?

任何建议或故障排除技巧将不胜感激!

提前致谢!

今天关于《使用 Nginx 在 VPS 上部署的 Flask 应用程序中出现 @jwt_required() 错误》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

声明:本文转载于:dev.to 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>