如何在Swagger Open API 3.0中定义常量字符串

时间:2018-08-10 06:09:40

标签: swagger openapi

如何在swagger open api 3.0中定义常量字符串变量? 如果我定义枚举,将如下所示

"StatusCode": {
        "title": "StatusCode",
        "enum": [
          "success",
          "fail"
        ],
        "type": "string"          

 } 

但是枚举可以是值列表,有什么方法可以在swagger open api 3.0中定义字符串常量

可以从http://editor.swagger.io/

执行代码

2 个答案:

答案 0 :(得分:2)

正如@Helen指出的那样,正如您可以从链接的答案中看到的那样,当前似乎没有比仅具有一个值的enum更好的地方。可以粘贴到http://editor.swagger.io/中的完整示例:

{
  "openapi": "3.0.0",
  "info": {
    "title": "Some API",
    "version": "Some version"
  },
  "paths": {},
  "components": {
    "schemas": {
      "StatusCode": {
        "title": "StatusCode",
        "enum": [
          "The only possible value"
        ],
        "type": "string"
      }
    }
  }
}

有关Github的一个相关主题,到目前为止尚未解决: https://github.com/OAI/OpenAPI-Specification/issues/1313

答案 1 :(得分:-1)

  

您可以将一个常量参数定义为一个只有一个可能值的必需参数

但是,如果您有多个参数,那么它就不能是常数。如果有多项选择,则可以在api中更改所有值。

参考: https://swagger.io/docs/specification/2-0/describing-parameters/