【问题标题】:Form type parameter not accessible by swaggerswagger 无法访问表单类型参数
【发布时间】:2017-01-22 16:03:45
【问题描述】:

我正在使用 flasgger 为我的烧瓶应用程序提供一个 swagger 规范。对于特定端点,我需要表单类型参数。

Update user address
---   
 parameters:
     - name: user_id
       in: path
       type: integer
       required: true
     - name: address
       in: form
       type: string
       required: true
       description: Address.

这个端点相关的方法是:

def update_address(user_id):
    approved_by = request.form.get('address')
    result = user.approve_sample(user_id, address):
    return json.dumps("OK"), 200, {'Content-Type': 'application/json; charset=utf-8'}

但是,作为表单类型参数的地址不会在数据库中更新。有什么建议为什么它没有注册地址?

【问题讨论】:

    标签: flask swagger swagger-ui flask-restful


    【解决方案1】:

    尝试在in 字段中使用formData,如OpenAPI Specification 中指定的那样:

     - name: address
       in: formData
    

    请注意,可能的值为 queryheaderpathformDatabody

    【讨论】:

    • 这确实有效。但是我不明白form和formData的区别。
    • @user3527975 这正是 OpenAPI 倡议指定的方式。他们决定将其命名为 formData,而不是 form。 'form' 根本不是该参数的可能值。 Flasgger 的 API 定义遵循此规范。
    猜你喜欢
    • 2019-03-25
    • 2018-06-08
    • 1970-01-01
    • 1970-01-01
    • 2012-05-26
    • 1970-01-01
    • 2018-05-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多