如何在 RAML 1.0 中定义地图

Posted

技术标签:

【中文标题】如何在 RAML 1.0 中定义地图【英文标题】:How to define a map in RAML 1.0 【发布时间】:2017-01-21 22:10:48 【问题描述】:

我想用 RAML 1.0 为 API 建模。在这个 API 中,我有一个地图,其中包含的对象具有动态键值。它应该如下所示:

"map" : 
   "key1" : 
       ...
   
   "key2" : 
       ...
   
   "key3" : 
       ...
    

在this *** article 我找到了动态键的解决方案,但现在我被卡住了。如何创建地图?当然我可以用数组做一个解决方法,但这不是我想要的。

干杯。

【问题讨论】:

【参考方案1】:

根据https://github.com/raml-org/raml-spec/blob/master/versions/raml-10/raml-10.md/#property-declarations和https://github.com/raml-org/raml-spec/blob/master/versions/raml-10/raml-10.md/#the-any-type

以下应该可以工作:

#%RAML 1.0 Library
types:
  TypeWithMap:
    properties:
      name: string
      map:
        properties:
          //: any

另外,你可以在https://github.com/raml-org/raml-spec/issues/573找到完整的讨论

【讨论】:

以上是关于如何在 RAML 1.0 中定义地图的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Anypoint Studio 项目中更改 RAML 版本

RAML 1.0:在可选对象中定义 minProperties

如何在 RAML 中定义一个全局变量

如何在 Raml 的外部文件中定义一个类型的数组?

RAML:如何仅导出特定类型的 XSD

RAML 1.0,映射类型复杂的正则表达式