OpenAPI3:如何在查询中传递json对象数组

时间:2019-05-20 13:26:27

标签: java openapi openapi-generator

我应该在一次休息行动中通过学生名单。学生名单的定义如下:

- name: student-list
              in: query
              description: Id of the Student of the target NF
              content:
                application/json:
                  schema:
                    type: array
                    items:
                      $ref: 'TS29571_CommonData.yaml#/components/schemas/StudentId'
                    minItems: 1

每个项目的定义如下:

StudentId:
      type: object
      properties:
        class:
          type: string
        rollno:
          type: integer

按照上面的表示,我应该传递StudentId json数组(style = form和explode = true)。
根据OpenAPI Generator生成的代码,需要学生列表的操作将遍历列表中的每个StudentId。对于每个StudentId,它调用toString方法来生成json表示形式StudentId对象
StudentId对象具有以下toString方法:

@Override
  public String toString() {
    StringBuilder sb = new StringBuilder();
    sb.append("class StudentId {\n");
    sb.append("    class: ").append(toIndentedString(mcc)).append("\n");
    sb.append("    rollno: ").append(toIndentedString(mnc)).append("\n");
    sb.append("}");
    return sb.toString();
   }

toIndentedString方法定义如下:

private String toIndentedString(Object o) {
    if (o == null) {
      return "null";
    }
    return o.toString().replace("\n", "\n    ");
  }

我的问题是:为什么OpenAPI无法生成正确的代码。 toString方法无法生成有效的json(因为jSON以“ StudentId类”开头,而以“ \ n”开头则很混乱)。
这个问题不是现有问题的重复。在这里,我问的是发送样式= form和explode = false的json对象数组。现有问题无法解决我的问题。

0 个答案:

没有答案