问题标签 [mson]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
apiblueprint - 用 MSON 描述对象的键
我有看起来像这样的 API。
该products
对象包含产品 ID(键)和它们在篮子中的数量(值)。
a) 我如何用 MSON 描述这个 API?
b) 这个模式正确吗?
apiblueprint - 如何在 MSON / API 蓝图中使用字符串值指定 JSON 对象?
我一直在查看这些示例,但我没有找到一种方法来指定一个属性,该属性的值是一个 JSON 对象,字符串作为值。我有一个这样的对象:
我正在努力指定如何指定,dynamic_attributes
因为键是动态的,并且在编写文档时还不知道。它基本上是一个 JSON 对象,它应该只包含字符串作为值。
有没有办法在 MSON 中做到这一点?
apiblueprint - 如何为 MSON 中的数组指定多种可能的类型(联合类型)?
我很难准确地描述我需要什么,但我花了一些时间浏览 MSON 规范并没有找到任何东西。
这个例子有点做作,但希望意图是明确的。
我想表达的是,农场可以包含各种动物,但不能包含基类。有什么方法可以在 MSON/JSON Schema 中表达它以便验证吗?实际上,我想选择或键入鸟和鱼的联合。我不介意明确写出类。
非常感谢。
apiblueprint - 任意大小的 Dredd / apiary / MSON 数组
我们正在努力在我们的 API 中描述任意大小的数组。使用 API Blueprint 和 MSON 格式进行 Dredd 测试。
端点 /spots 应该返回一个“点”数组(那些是对象)。我们不知道有多少。目前我们只能使 dredd 验证我们数组的第一个点。这是我们的蓝图:
如果我们删除fixed-type
,## Spots(array, fixed-type)
那么根本不会验证任何内容......
我们需要告诉他,Spots 的所有元素都必须是 Spot,但不限制有多少。
谢谢你的帮助!
json - MSON 到 JSON-Schema “一个”问题
我试图用 ApiBlueprint MSON 表示法描述一个具有可变部分的对象。这是 ApiBlueprint 中的简单代码:
它在 apiary.io 中完美呈现,但在https://json-schema-validator.herokuapp.com中生成的 Json Schema 的验证会报告错误:
也许我做错了什么?
有什么方法可以在 MSON 中描述对象具有提供正确 JSON 模式的变体部分的对象数组?
jsonschema - 如何使用 MSON 定义 ApiBlueprint 数组值示例?
我可以使用 MSON 来指定示例值而不是+ Body
吗?是否可以覆盖预定义的结构值?
我试过这样:
但是这样的定义破坏了 json-schema,因为 AppCommandArg 被描述为单独的对象。而且在从 MSON 生成的 JSON 中有 3 个项目,其中第一项是 deafult AppCommandArg
。
oracle - Api 蓝图在实时 api 上使用 dredd 失败?
我正在将 dredd 从 1.08 升级到最新版本,与此同时,我正在尝试验证我们的 api 文档,它是用实时测试 api 用蓝图编写的,但它失败了。
由于测试是针对实时 api 运行的,因此从 api 返回的响应包含与模糊打印文档中指定的值不同的值。我从 dredd 收到以下错误。
有人可以帮我弄清楚吗?:)
正文:在'/data/email'没有枚举匹配:“dredd_testzz@keyflow.se”
正文:在'/data/firstName'没有枚举匹配:“狙击手”
正文:在'/data/lastName'没有枚举匹配:“狼”
正文:在'/data/verified'没有枚举匹配:false
dredd 生成的 JSON Schema 如下
apiblueprint - 在 API Blueprint/MSON 中引用已定义数据结构内的属性
我一直在使用 API 蓝图格式来设计 API,并且在使用它时获得了很多乐趣。当我声明我的数据结构时,我遇到了代码重用或模型重用问题。
根据声明响应时的文档,必须这样做:
例如:
但是,当多人处理文档时,我不想指示他们使用什么返回码,因为我们已经定义了它们并且它们是数字,所以人们会忘记它们。因此,为了避免来回走动,我这样做的想法是我可以使用/引用其中一个属性:
我会这样引用它:
它显然不起作用,我在文档中找不到与我想要做的事情有关的任何内容。也许我错过了。
你是怎么做到的?可能吗?
谢谢!
apiblueprint - 重复具有不同值的 MSON 数据结构
我的 API 中有很多地方需要描述对象列表。每个对象具有相同的键/结构但不同的值。如何在保留原始结构的所有原始类型、描述等的同时调整某些数据结构的每个实例的值?
例如,如果我有以下数据结构Restaurant
然后,假设我想Restaurant
在 GET 响应中实例化几个 s,如下所示:
JSON 正文看起来像这样(注意years_of_operation
Bob Evans 和 Eatly 现在是数字)
并且渲染的文档只会显示这一点(现在缺少 Bob Evans 和 Eatlyrestaurant_name
的描述)years_of_operation
我认为 MSON 会继承这些描述和类型定义。否则,我必须在使用数据结构的任何地方更新描述(或类型、要求等)......但我的印象是这是 MSON 应该解决的一种问题?我在做傻事吗?
除了我的github 问题之外,我还在这里发帖,因为该 repo 已经有很长时间没有贡献了
apiblueprint - 在 API-Blueprint 中参数化数据结构
我依稀有以下文件:
我在自己的数据结构中重构了链接。所有这些都运作良好。我想要做的是Links
动态地制作部分网址,以便resources
用我传入的任何内容替换。所以像:
然后我可以做这样的事情:
替换resources
为cats
.