在flask-restful和create_app中使用flask-jwt-extended回调 - python

我正在尝试使用flask-jwt-extended为我的flask API创建API令牌。我正在尝试初始化token_in_blacklist_loader,但无法找出正确的方法来执行此操作。

问题是token_in_blacklist_loader被实现为装饰器。应该以以下方式使用它:

@jwt.token_in_blacklist_loader
def check_if_token_in_blacklist(decrypted_token):
    jti = decrypted_token['jti']
    return jti in blacklist

^ from the docs here

其中jwt定义为:

jwt = JWTManager(app)

但是,如果使用create_app模式,则jwt变量将隐藏在函数内部,并且不能在装饰器的全局范围内使用。

解决此问题/解决此问题的正确方法是什么?

参考方案

JWTManager放在另一个文件中,然后使用jwt.init_app函数对其进行初始化

例如,请参见:

https://github.com/vimalloc/flask-jwt-extended/blob/master/examples/database_blacklist/extensions.py

https://github.com/vimalloc/flask-jwt-extended/blob/master/examples/database_blacklist/app.py

45码

在Flask sqlalchemy中订购一对多模型? - python

我正在尝试编写一个特定的查询,以允许用户优化其搜索。我与作者和书籍之间存在一对多的关系:class Author(Model): id = Column(Integer, primary_key=True) name = Column(String) books = relationship('Book', backref='a…

在Flask-sqlalchemy和Postgresql中使用JSON类型 - python

背景:我正在构建Flask应用程序,并且已将数据存储到PostgreSQL数据库中以及JSON列类型中。 任务:在我的视图函数中,我想通过{Key:Value}从JSON列中订购数据库查询 完成的:例如,通过使用以下命令,我已经在psql命令行中成功执行了此查询:从目标中选择*,其中cast(product->>'salesrank'为整数)as…

Python GPU资源利用 - python

我有一个Python脚本在某些深度学习模型上运行推理。有什么办法可以找出GPU资源的利用率水平?例如,使用着色器,float16乘法器等。我似乎在网上找不到太多有关这些GPU资源的文档。谢谢! 参考方案 您可以尝试在像Renderdoc这样的GPU分析器中运行pyxthon应用程序。它将分析您的跑步情况。您将能够获得有关已使用资源,已用缓冲区,不同渲染状态上…

Python:图像处理可产生皱纹纸效果 - python

也许很难描述我的问题。我正在寻找Python中的算法,以在带有某些文本的白色图像上创建皱纹纸效果。我的第一个尝试是在带有文字的图像上添加一些真实的皱纹纸图像(具有透明度)。看起来不错,但副作用是文本没有真正起皱。所以我正在寻找更好的解决方案,有什么想法吗?谢谢 参考方案 除了使用透明性之外,假设您有两张相同尺寸的图像,一张在皱纹纸上明亮,一张在白色背景上有深…

Python uuid4,如何限制唯一字符的长度 - python

在Python中,我正在使用uuid4()方法创建唯一的字符集。但是我找不到将其限制为10或8个字符的方法。有什么办法吗?uuid4()ffc69c1b-9d87-4c19-8dac-c09ca857e3fc谢谢。 参考方案 尝试:x = uuid4() str(x)[:8] 输出:"ffc69c1b" Is there a way to…