Swagger客户端,为请求添加固定参数

时间:2017-01-11 00:10:36

标签: swagger swagger-2.0

我正在寻找一种方法来为客户端发送到服务器的每个请求添加固定参数。

例如:param1=false。服务器的默认值为param1=true,但我希望生成的客户端在每次请求时都发送false。这有可能吗?

我试过了:

  • default: false - 记录为不适用于此案例
  • defaultValue: false - 似乎只适用于UI
  • enum: -false - 它似乎也适用于UI

修改

当我使用

生成Java代码时
    - name: param1
      in: query
      type: boolean
      required: true
      enum: [true]

生成的代码如下所示:

private com.squareup.okhttp.Call routeGetCall(Boolean param1){
        Object localVarPostBody = null;

        // verify the required parameter 'param1' is set
        if (param1 == null) {
            throw new ApiException("Missing the required parameter 'param1' when calling routeGet(Async)");
        }
        ... more code ...

Param1永远不会被迫成为现实。我甚至可以将它设置为假。因此,enum似乎只适用于UI?

1 个答案:

答案 0 :(得分:1)

虽然只有一个可能的值可以使用常量参数,例如?param1=true

      parameters:
        - name: param1
          in: query
          type: boolean
          required: true
          enum: [true]

如果参数有多个可能的值,例如true / false(如示例所示),则规范不能强制参数的任何特定值。 由客户决定使用哪个值。

也就是说,需要修改生成的客户端代码以使用特定的参数值。