使用 Json 网络令牌与 Flask-Oauthlib

Using Json Web Tokens with Flask-Oauthlib

对于一个客户端项目,我正在开发一个使用 Flask 作为后端的 Web 应用程序。

所以我决定使用 Flask-oauthlib 来尝试简化提供刷新令牌和撤销访问令牌的过程。但是,有些事情我仍然很难理解。

编写 oauth 服务器时,如何让它生成并提供 JSON Web 令牌而不是使用默认的 access/refresh 令牌?

我还想知道的另一件事是如何从 http 请求中验证 JSON Web 令牌?

如有任何建议,我们将不胜感激。

我是 Flask-OAuthlib 的作者。用这个库很难实现这样的事情。我创建了一个新库 Authlib。有了这个库,就可以很容易地像您描述的那样创建一个 OAuth 服务器。

Authlib 本身包含 JWT。首先,了解如何在 https://docs.authlib.org/en/latest/specs/rfc7519.html

上创建 JWT 和验证 JWT

对于生成访问令牌和刷新令牌,您可以配置它

OAUTH2_ACCESS_TOKEN_GENERATOROAUTH2_REFRESH_TOKEN_GENERATORhttps://docs.authlib.org/en/latest/flask/oauth2.html#define-server

所述