我只是想了解在从RAML生成的文档中排除/包括端点的可能性。
例如,给定
#%RAML 1.0
baseUri: https://api.mybanks.com/v1
title: MyBanks-API
version: v1
protocols: [HTTP, HTTPS]
mediaType: application/json
/banks:
get:
description: Lists all banks
responses:
200:
body:
text/plain:
example: ['b1', 'b2']
/accounts:
get:
description: List all accounds
responses:
200:
body:
text/plain:
example: ['a1', 'a2', 'a3']
我想从生成的文档中排除/banks
API。有什么可能的方法可以做到这一点?(最好不要评论(
没有办法(AFAIK(动态排除API规范的片段——此外,这样一个功能的语义是什么?意思是什么?另一个需要考虑的问题是,当你接受规范并开始实施它时,它是如何应用的?
现在有一种方法可以使用RAMLextension
扩展现有的API规范。https://github.com/raml-org/raml-spec/blob/master/versions/raml-10/raml-10.md/#extensions
如果使用RAMLextension
片段,则规范将被拆分为两个文件:
1( 根RAML文件:
#%RAML 1.0
baseUri: https://api.mybanks.com/v1
title: MyBanks-API
version: v1
protocols: [HTTP, HTTPS]
mediaType: application/json
/accounts:
get:
description: List all accounds
responses:
200:
body:
text/plain:
example: ['a1', 'a2', 'a3']
2(extension
片段:
#%RAML 1.0 Extension
extends: banks-api.raml
/banks:
get:
description: Lists all banks
responses:
200:
body:
text/plain:
example: ['b1', 'b2']
现在您有了API的两个视图,(1(根和(2(extension
。您可以向用户提供root或extention
。