我一直在构建一个应用程序,它使用flask、flask_jwt_extended和装饰器@jwt_required来处理需要访问令牌才能访问的受保护功能。从这些端点,我可以使用flask_jwt_extended的get_current_user函数来获取当前用户。
这在开发过程中一直运行良好,但现在我计划使用gunicorn为生产应用程序提供服务。但是,当我运行gunicorn服务器时,get_current_user函数似乎总是返回none。例如,以下代码适用于python3 -m flask run,但不适用于gunicorn run:app -b localhost:5000。这里会有什么问题呢?
@jwt_required
def get_user_by_id(user_id: str) -> Dict[str, Any]:
# returns user when using flask run, but not with gunicorn
curr_user = get_current_user()发布于 2019-05-05 21:40:25
班级工作人员
sync类?也许你可以试着看看gunicorn worker-class如果您尝试使用同步工作线程类型并将线程设置设置为大于1,则将改用gthread工作线程类型。
在您的python配置文件中更改工人类,或者您可以直接在命令行中更改-
worker_class = 'gthread‘
检查你的JWT_SECRET_KEY
对于每个workers,
JWT_SECRET_KEY需要具有相同的值https://stackoverflow.com/questions/54204474
复制相似问题