Har*_*ran 5 apiary.io apiblueprint aglio mson
我正在使用API Blueprint和Agelo来呈现我的 API 文档。使用枚举类型时,我观察到一种奇怪的行为。响应未显示定义的枚举值,而架构显示所有枚举值(这是预期的)以及声明的值(“星期一”-参考实际值)。
数据结构部分
# Data Structures
## Days (enum[string])
+ `Monday`
+ `Tuesday`
+ `Wednesday`
+ `Thursday`
## ListEntry
- playOrder: 1 (number)
- Id: 37a21975a499494f03367 (string)
- programDay: `Tuesday` (Days)
## `sample-request-200`
- id: 58828b2941cc351348 (string)
- startDate: `2019-08-01T11:00:00.000Z` (string)
- endDate: `2019-08-05T11:55:59.000Z` (string)
- Language: `en-US` (string)
- entries: ListEntry (array[object])
Run Code Online (Sandbox Code Playgroud)
API请求文档部分
+ Request
+ Headers
Content-Type: application/json
+ Attributes (sample-request-200)
Run Code Online (Sandbox Code Playgroud)
实际的
---- JSON Body ----
{
"playOrder": 1,
"Id": "37a21975a499494f03367",
"programDay": "Hello, world!" // Agilo shows "Hello,World" when some error occurred
}
-----Generated Schema-----
"programDay": {
"type": "string",
"enum": [
"Monday",
"Tuesday",
"Wednesday",
"Thursday",
"Monday"
]
}
Run Code Online (Sandbox Code Playgroud)
期望的
---- JSON Body ----
{
"playOrder": 1,
"Id": "37a21975a499494f03367",
"programDay": "Monday"
}
-----Generated Schema-----
"programDay": {
"type": "string",
"enum": [
"Monday",
"Tuesday",
"Wednesday",
"Thursday"
]
}
Run Code Online (Sandbox Code Playgroud)
关于如何使用 API 蓝图 (MSON) 中定义的枚举数据结构的任何想法。不确定如何引用对象中的枚举值。
使用下面的方法来引用枚举值是否正确?
- programDay: `Tuesday` (Days)
Run Code Online (Sandbox Code Playgroud)
结构:
# Data Structures
## Device (enum)
+ `mobile`
+ `desktop`
Run Code Online (Sandbox Code Playgroud)
像这样使用:
+ Request (multipart/form-data)
+ Attributes
+ `id`: abc (required)
+ `device` (Device)
Run Code Online (Sandbox Code Playgroud)
结果: