flask_jwt_extended 如何主动销毁一个token
时间: 2023-05-13 20:05:11 浏览: 294
python_flask_jwt
可以使用 `jwt_manager.token_in_blacklist_loader` 方法来实现主动销毁一个 token。具体实现方法如下:
1. 在 Flask 应用中初始化 JWT 扩展:
```python
from flask_jwt_extended import JWTManager
jwt_manager = JWTManager(app)
```
2. 创建一个 token 黑名单列表:
```python
blacklist = set()
```
3. 实现 `jwt_manager.token_in_blacklist_loader` 方法:
```python
@jwt_manager.token_in_blacklist_loader
def check_if_token_in_blacklist(decrypted_token):
jti = decrypted_token['jti']
return jti in blacklist
```
4. 在需要主动销毁 token 的地方,将 token 的 jti 添加到黑名单列表中:
```python
blacklist.add(jti)
```
这样,当使用已被添加到黑名单列表中的 jti 创建 token 时,`check_if_token_in_blacklist` 方法会返回 True,从而使得该 token 无效。
阅读全文