打开api v3-字典固定键定义

时间:2018-10-30 14:47:55

标签: json swagger openapi

我正在使用SwaggerHub以OpenApi v3语言描述API。

我正在尝试描述一个字典数据模型,其中的键是一个字符串,可以是一些固定值(枚举),而值是一个对象。

我的输出示例希望是:

{
  "array": {
    "done_log_in": {
      "mytype": "discount",
      "myvalue": 10
    },
    "done_log_out": {
      "mytype": "discount",
      "myvalue": 5
    }
  }
}

所以我指的是本文档here

我这样定义模式:

schema:
  type: object
  properties:
    array:
      type: object
      properties:
        default:
          type: string
          enum:
            - done_log_in
            - done_log_out
      required:
        - default
      additionalProperties:
        type: object
        properties:
          mytype:
            type: string
          myvalue:
            type: string

但是SwaggerHub根据我的描述创建的示例如下:

{
  "array": {
    "default": "done_log_in",
    "additionalProp1": {
      "mytype": "string",
      "myvalue": "string"
    },
    "additionalProp2": {
      "mytype": "string",
      "myvalue": "string"
    },
    "additionalProp3": {
      "mytype": "string",
      "myvalue": "string"
    }
  }
}

所以我认为我对Swagger文档中有关字典描述的解释有些错误。

我的最后一个问题是: 如何用OpenAPI V3语言描述必须用作字典键的字符串值列表?

0 个答案:

没有答案