前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Flask 学习-52.Flask-RESTX 生成 Swagger 文档带上Authorization认证

Flask 学习-52.Flask-RESTX 生成 Swagger 文档带上Authorization认证

作者头像
上海-悠悠
发布2022-09-13 15:45:27
9430
发布2022-09-13 15:45:27
举报
文章被收录于专栏:从零开始学自动化测试

前言

我们在开发的接口中,一般会带上用户登录的token认证,需在请求头部传Authorization。 Flask-RESTX 生成 Swagger 文档,可以直接在文档上登录,方便快速测试接口。

需登录认证的接口

接着前面一篇,需要登录的接口加上@jwt_required()装饰器

代码语言:javascript
复制
from flask_jwt_extended import jwt_required

@api.route('/')
class TodoList(Resource):
    '''Shows a list of all todos, and lets you POST to add new tasks'''
    @api.doc(description='接口描述,描述接口在什么场景使用 list_todos')
    @api.marshal_list_with(todo)
    @jwt_required()
    def get(self):
        '''List all tasks'''
        return DAO.todos

在 Swagger 文档中测试该接口

会返回401

接下来我们看下,如何在文档中全局登录,传token

添加Authorization

apis/__init__.py文件中,实例化Api时候添加security参数

代码语言:javascript
复制
api = Api(
    title='yoyo API 接口文档',
    version='1.0',
    description='API 文档描述',
    security="Bearer Auth",
)

这时候文档中就会看到有锁的图标

接着再添加一个authorizations参数

代码语言:javascript
复制
api = Api(
    title='yoyo API 接口文档',
    version='1.0',
    description='API 文档描述',
    security="Bearer Auth",
    authorizations={
        "Bearer Auth": {
            "type": "apiKey",
            "in": "header",
            "name": "Authorization",
            "description": "Add a jwt with ** Bearer token"
        }
    }
)

于是在文档的右上角就会有个 Authorize 图标

全局登录

先登录后拿到token

把token复制出来,在 Authorize 图标点开,在输入框的格式“Bearer 复制token

如下图所示就是登录成功了

接下来访问其他接口,就会自动在请求头部带上token了

2022年第 12期《python接口web自动化+测试开发》课程,9月17号开学!

本期上课时间:2022年9月17号 - 2022年12月17号,周六周日上午9:00-11:00

报名费:报名费3000一人(周期3个月)

联系微信/QQ:283340479

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-09-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 从零开始学自动化测试 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 需登录认证的接口
  • 添加Authorization
  • 全局登录
    • 报名费:报名费3000一人(周期3个月)
      • 联系微信/QQ:283340479
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档