问题标签 [flask-jwt]

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.

0 投票
1 回答
1024 浏览

python - 为 flask-jwt-extended 获取其他用户 jti

如何获得'jti',不是我的,而是通过“用户名”?在注册/登录时,用于访问和刷新的 jti 被分配给“用户名”。所有说明和文档仅说明如何让我自己的 jti 以 smth 注销。像这样的代码:

如何为其他用户获取 jti。我想像:

必须为此而存在,谁知道???

0 投票
1 回答
244 浏览

python - JWT_DEFAULT_REALM 是什么意思?

我对使用时的平均值JWT_DEFAULT_REALM或平均值感到困惑。我不是以英语为母语的人。"The default realm"Flask_JWT

0 投票
2 回答
161 浏览

flask - 是否可以通过代码更改 _default_jwt_payload_handler(identity)?

我在我的应用程序中使用 Flask-JWT 时遇到问题,我正在使用如下的身份验证和身份:

但是我收到一个错误,因为我的 db 表中没有 id 字段,因为我有一个 idOperator

我怎么解决这个问题?_default_jwt_payload_handler(identity) 函数去寻找一个 Id 字段,如何在不改变 flask-jwt 的 init.py 的情况下将此自动 id 字段更改为 IdOperator?

谢谢

0 投票
1 回答
382 浏览

flask - 如何在烧瓶中设置持久的 JWT 令牌标头?

如果没有 Javascript 的帮助,我似乎找不到将 JWT 令牌设置为每个 HTTP 请求中的标头的方法。

目前,我的应用程序设置为使用“set_access_cookies”和“unset_access_cookies”方法来跟踪会话。但是,仅取消设置 cookie 不会使 cookie 无效。因此,我想在标头中使用 JWT,以便我可以使用 blacklist.add() 方法,因为 blacklist.add() 似乎无法从我的测试中查看 cookie。

我的登录功能:

我的注销功能:

这很好用,但是有没有一种简单的方法可以将 JWT 放置为持久标头?

0 投票
2 回答
1727 浏览

flask - @JWT_Required 装饰器异常处理

我正在使用使用 JWT 的身份验证 API,它工作得很好。此 API 用于为我的网络应用程序授权用户。为此,我使用 Flask 手动将 JWT access_tokens 存储为 cookie。我使用 @JWT_required 装饰器保护我的资源,如果我尝试使用有效令牌访问安全资源,一切正常。但是,如果访问令牌丢失或无效/过期,我会收到一条 JSON 消息:

这显然是正确的消息,而不是显示我想要重定向到 Flask 提供的相应状态码错误页面的 JSON - 在本例中为 401。

  • 我尝试为 Flask 和 JWT Manager 添加错误处理
  • 自定义装饰器,虽然我在这方面表现不佳,因为我相信在 FLASK-JWT-extended 中必须有解决方案

如果访问令牌有任何问题,我的目标是重定向到相应的错误页面 404、403、401。

解决方案:

0 投票
2 回答
1778 浏览

flask - Flask JWT 扩展“不允许指定的 alg 值”错误

当向需要使用 JWT 访问的烧瓶路由发出请求时(@jwt_required烧瓶休息资源上的装饰器),我收到一条422 UNPROCESSABLE ENTITY消息:The specified alg value is not allowed.

登录并导航到调用请求的(前端)路由时:

同样,它按预期工作,但是在刷新时它会显示 422 错误。我将令牌存储在 localstorage 中并将其加载到 axios 标头中,如下所示:

init()并打电话给setHeader()main.js,所以我很困惑为什么这只是在刷新后才导致错误。

我无法找到任何有关如何纠正The specified alg value is not allowed错误的资源。任何援助将不胜感激!:)

0 投票
1 回答
1613 浏览

python - 如何将身份验证功能放入烧瓶中的@app.before_request

我想在烧瓶应用程序中制作身份验证层。我正在使用flask-jwt-extended 进行jwt auth,因此我必须为每个受保护的路线提及@jwt_requied 装饰器。所以我不想对每条受保护的路线都这样做。我想定义一个函数,并使用@app.before_request 在每个请求之前执行它。我希望身份验证发生在这一层。

所以这是我想在每个请求检查身份验证之前调用的函数。

基本上我的 qns 是如何在 @app.before_request def before_calback() 中进行身份验证?

0 投票
3 回答
1858 浏览

python - 如何从烧瓶中的中间件(app.before_request())返回烧瓶响应?

我在我的应用程序中声明了一个中间件部分,在请求之前执行了一些代码。在烧瓶中有两个装饰器被调用@app.before_request@app.after_request通过使用它们我们可以声明一个中间件部分。我想在中间件中验证 JWT 令牌的身份验证。

如果令牌有问题,那么我想捕获该异常并返回消息“无效令牌”。我不想执行进一步的代码。那么如何从除了块返回响应?

0 投票
1 回答
806 浏览

python - Flask restful 和 flask jwt - 如何一起使用?

我正在为我的 API 服务器使用 flask restful,并且想使用 flask_jwt 来保护我的端点。

这是我的端点以及我如何将它们添加到 API 服务器

我想@jet_required为我的 API 端点添加一个简单的装饰器。我怎样才能得到与此类似的东西

但是使用flask restful 接口呢?

当我尝试使用以下内容并访问端点时,出现此错误

类模型(资源):@jwt_required
def get(self):返回1

TypeError: .wrapper..decorator at 0x7ff5fb262840> is not JSON serializable 127.0.0.1 - - [22/Jan/2020 10:10:28] "GET /resize HTTP/1.1" 500

0 投票
1 回答
2064 浏览

python - Flask-JWT 或 Flask-Login

我正在尝试使用 REST 构建 Flask 后端,但我不确定使用 Flask-JWT 或 Flask-Login 来管理用户登录和授权。我想同时使用它。我可以这样做吗?如果可以,那么我应该使用@jwt_required() 还是 **@login_required装饰器?