问题标签 [flask-jwt-extended]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 如何使用 Flask 和 flask_jwt_extended 进行自定义 JWT 验证?
我想在调用 @jwt_required 时向令牌添加额外的验证。我想验证其中一项声明。有没有我可以用 JWTManager 做到这一点?
目前我的代码只是调用:
我用以下方式装饰功能:@jwt_required
flask - Flask-jwt-extended 不支持要求的声明?
我在 flask-jwt 上使用 flask-jwt-extended 但似乎不支持要求索赔。
这是我必须在新的身份功能中实现自己的东西吗?如果是这样,我如何覆盖 flask-jwt-extended 中的现有功能?
python - Flask JWT 在每个请求上扩展令牌的有效性
设想
登录用户的令牌有效期为 24 小时。在此期间,所有带有@jwt_required
装饰器的请求都将使当前访问令牌的有效期再延长 24 小时。最长有效期为 168(24 * 7) 小时。
可以使用 access_token 和 refresh_token。
但这意味着来自我的应用程序的每个 API 调用都将是两个请求: 1. 实际 HTTP 请求 2. 刷新身份验证令牌
有没有办法隐式扩展身份验证令牌?
python - flask-jwt-extended:测试期间的假授权标头(pytest)
这是我要测试的功能
我从 pytest 类调用函数
与db_session
夹具
这导致错误
手动调用create_access_token
当我调用create_access_token
上面的夹具时,我仍然得到相同的结果
如何在测试期间伪造 JWT 令牌pytest
?
python - flask jwt 扩展了如何通过观众
我试图将观众作为参数传递给flask jwt扩展用于解码jwt令牌,我的代码是这样的,
当我打电话给我的 api 我得到
我知道,我们必须提供观众价值。但是我不知道如何让观众jwt_required
进来flask_jwt_extended
。有人能帮我吗?
python - flask-jwt-extended:自定义错误消息
当 flask-jwt-extended 令牌过期时,一个 HTTP 请求将产生这个 JSON 响应
我的应用程序有一个固定的错误响应格式:
如何自定义 flask-jwt-extended 错误响应?
curl - 为flask-jwt生成令牌给出不正确的方法错误
我在我的项目中使用了flask-jwt,我已经声明controller.py
:
然后在api的view.py
模块上我有这个
我使用电子邮件作为用户名概念,我没有向用户询问他的用户名,而是使用用户的电子邮件地址作为用户名,并且我已经models.py
像这样定义了表格:
但是使用上面的方法我不断收到错误方法不允许,如果我尝试使用 POST 我得到错误提示 failed to decode <p>Failed to decode JSON object: No JSON object could be decoded</p>
。
我很困惑发生了什么事,办公室的类似设置正在工作,但我从我能记得的头顶上实现了..似乎我错过了一点。
python - 将 flask-jwt-extended 回调与 flask-restful 和 create_app 一起使用
我正在尝试使用 flask-jwt-extended 为我的烧瓶 API 创建 API 令牌。我正在尝试初始化token_in_blacklist_loader但无法找出正确的方法。
问题在于它token_in_blacklist_loader
是作为装饰器实现的。它应该以下列方式使用:
其中jwt
定义为:
但是如果使用该create_app
模式,那么jwt
变量会隐藏在函数中,并且不能在装饰器的全局范围内使用。
解决此问题/解决此问题的正确方法是什么?
python - 在 HTML 表单中使用双重提交的 CSRF 令牌(标题 + cookie)?
我正在使用flask-jwt-extended
JWT 身份验证的组合,并且我启用了 CSRF 保护,这意味着对于某些 HTTP 方法(PUT、POST、DELETE...),需要 cookie 中的值和 HTTP 标头匹配。
这适用于我的 API 请求,我只是在 JS 中构造 HTTP 请求并正确设置了标头,但我想使用 Flask-Admin,并允许基于 JWT 令牌进行访问。我通过is_accessible
在 Flask-Admin 的 ModelView 中装饰函数@jwt_optional
并在其中检查来做到这一点。
但是,现在当我尝试通过 Flask-Admin 执行任何修改时,我从 收到一条错误消息flask-jwt-extended
,指出我没有正确包含我的 CSRF 令牌。这是真的,因为我使用的是 Flask-Admin 附带的默认表单。
我的问题是,最好的解决方案是什么?是否可以仅对某些路径禁用 CSRF 保护?(并为他们启用 Flask-Admin 自己的 CSRF 保护?)我是否应该修改视图并插入由提交按钮触发但实际上提交 XmlHTTPRequest 的 JS?我应该以不同的方式为 Flask-Admin 视图实现 JWT 身份验证吗?