考虑以下摘录自https://github.com/apiaryio/mson#example-1 ...
示例 1
一个简单的object
结构及其关联的 JSON 表达式。
- id: 1
- name: A green door
- price: 12.50
- tags: home, green
假设我想为属性定义有效值。name
考虑使用诸如 Dredd 之类的工具进行 API 测试的上下文。我们可能需要定义什么是预期/有效值name
以响应获取此资源,否则可能会损坏某些东西并且此测试步骤应该失败。
和/或,如果创建/更新这种类型的资源,我们可能需要定义哪些name
值是有效/接受的。这目前可以在 MSON 中定义吗?
(我相信这可以在 JSON 模式中完成,这让我对 MSON 支持充满希望。)
以下是一个示例 API 蓝图资源,用于说明如何使用它...
# Thing ID [/api/thing/id]
# List Thing ID attributes [GET]
+ Response 200
+ Attributes
+ href (string)
+ make (string)
+ model (string)
+ version (string)
+ Body
{"href":"/api/thing/id","make":"BrandX","model":"SuperThingy","version":"10.1"}
model
在上面的示例中,属性有 3 个已知/接受/有效值: CoolThingy
、AwesomeThingy
和MLGThingy
我们可以在 MSON 中表示这个资源,这样......
- Apiary(或其他渲染的)API 文档消费者可以很容易地知道
model
期望什么值? - Dredd 处理并传递/失败
model
响应 GET 到此资源的值?