从你的烧瓶项目中提取夸张的规格

flask-swagger的Python项目详细描述


用于烧瓶的2.0规格抽提器

安装:

pip install flask-swagger

烧瓶摇动提供一种检查烧瓶应用程序的方法(摇动) 对于包含带有swagger 2.0的yaml docstrings的端点 Operation 物体。

class UserAPI(MethodView):

    def post(self):
        """
        Create a new user
        ---
        tags:
          - users
        definitions:
          - schema:
              id: Group
              properties:
                name:
                 type: string
                 description: the group's name
        parameters:
          - in: body
            name: body
            schema:
              id: User
              required:
                - email
                - name
              properties:
                email:
                  type: string
                  description: email for user
                name:
                  type: string
                  description: name for user
                address:
                  description: address for user
                  schema:
                    id: Address
                    properties:
                      street:
                        type: string
                      state:
                        type: string
                      country:
                        type: string
                      postalcode:
                        type: string
                groups:
                  type: array
                  description: list of groups
                  items:
                    $ref: "#/definitions/Group"
        responses:
          201:
            description: User created
        """
        return {}

flask swagger在methodview类和 常规烧瓶视图功能。

遵循yaml约定,flask swagger搜索---, 前面的所有内容都以summary(第一行)的形式提供,并且 description(以下几行)当所有内容 后被分析为狂妄自大 Operation 反对。

为了支持 Schema 对象 ParameterResponse 对象,瓶子摇摇晃晃偏离了标准。我们需要 内联架构的id字段,然后正确使用该字段 放置 Schema 中的对象 Definitions 反对。

Schema 对象可以在docstrings(见上面的group object)或responses或parameters(见上面的user object)的definitions部分中定义。我们也支持嵌套在其他 Schema 物体。上面显示了一个带有user的address属性的示例。

为了向全世界展示你的招摇规格,你提供了一个烧瓶 沿着这些线做某事的路线

from flask import Flask, jsonify
from flask_swagger import swagger

app = Flask(__name__)

@app.route("/spec")
def spec():
    return jsonify(swagger(app))

注意,swagger(app)返回的swagger规范是 尽可能少。覆盖并添加到 你认为合适的规格。

@app.route("/spec")
def spec():
    swag = swagger(app)
    swag['info']['version'] = "1.0"
    swag['info']['title'] = "My API"
    return jsonify(swag)

Swagger-UI

我们开始执行这项任务的原因是我们的用户界面过于夸张, 但是,烧瓶膨胀不包括膨胀ui。只需遵循 在https://github.com/swagger-api/swagger-ui有很棒的文档 并指出 swaggerUi.url 到你的新烧瓶摇摇晃晃的终点享受。

致谢

flask swagger建立在 flask-sillywalkflask-restful-swagger

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Android Java在活动之间传递值   java当实体中存在关系时,我可以只使用实体的id而不是从DB中获取实体吗?   bouncycastle Java运行SSHD服务器错误未找到类定义   java SWT/Swing>Threads n'Hell   java多线程数据库读取   java如何在Eclipse中轻松提交Git   java在哪里可以找到字符串相等比较的一组特定排序规则?   无连接表的java单向单域关系   java扩展三角文件   java spring。杰克逊。序列化。failonemptybeans   java无法加载请求的类:oracle。jdbc。驾驶员OracleDriver   java通过数组进行索引循环并打印出元素?   找不到eclipse错误类中的java提交Hadoop作业   Java:随机设定种子   java片段、异步任务和侦听器   java在分号后使用{}