我正在API Blueprint中编写API规范,我想将location
属性定义为长度为2的固定数组,如下所示:
我把它写成数字数组,如:
+ location (array[number], required)
这是Apiary的结果:
我认为这是可能的,因为图像中的零,但我不知道如何。我通过文档搜索过,但我找不到任何东西......有什么想法可以做到吗?感谢。
答案 0 :(得分:0)
有可能,您可以在数组中使用fixed
type属性,这意味着值固定在数组长度的旁边。
在您的情况下,您不希望修复这些值,因为您希望任何数字都可以在数组中。为此,您需要将值移动为样本。这是一个例子:
+ Response 200 (application/json)
+ Attributes
+ location (array, fixed)
+ `43.3` (number, sample)
+ `-8.41` (number, sample)
不幸的是,API Blueprint解析器中存在一些当前的错误,因此这不会按预期工作。它将生成一个不正确的JSON模式和示例JSON主体,后者由https://github.com/apiaryio/drafter/issues/519跟踪,我相信很快就会解决。
由于这些限制,您可能最好在位置属性的说明中解释这一点:
+ Response 200 (application/json)
+ Attributes
+ location (array) - Location MUST contain exactly two numbers.
+ `43.3` (number)
+ `-8.41` (number)
将呈现如下: