我应该如何为其 API 使用 MailChimp JSON Schema?
Posted
技术标签:
【中文标题】我应该如何为其 API 使用 MailChimp JSON Schema?【英文标题】:How am I supposed to consume the MailChimp JSON Schema for its API? 【发布时间】:2017-04-25 12:38:57 【问题描述】:在其网站的开发者部分,MailChimp 链接到描述其 API 的 JSON 模式。
http://developer.mailchimp.com/documentation/mailchimp/guides/get-started-with-mailchimp-api-3/#json-schema
我熟悉 JSON 模式(Draft v4)。我了解它们在 API 有效负载验证、文档生成等方面的作用。我也熟悉它们与 Swagger (OpenAPI) 模式(在某些方面相似但更全面地记录 API)的对比。
看起来 MailChimp 的模式是一个类似 Swagger 的 API 描述,但基于 JSON 模式语法。起初,它看起来像一个 JSON 超模式,但它具有引用其他 JSON 文件的“模式”和“目标模式”字段,而不使用 JSON 指针 (https://spacetelescope.github.io/understanding-json-schema/structuring.html)。它还混入了一些 HATEOAS 概念?
什么工具可以让我使用这个 JSON 模式,而无需手动协调 MailChimp 发布的所有 JSON 模式文件?
我的最终目标是创建 MailChimp API 的 Swagger 2.0 (OpenAPI) 定义。我有一个从 JSON Hyper-Schemas 转换为 Swagger 2.0 的工具。
【问题讨论】:
【参考方案1】:我接受了 TooMuchPete 的建议。
MailChimp 是这样说的:
嗨,乔丹,
感谢您与我们联系。目前,我们混合使用这两种规范。我们目前使用 Swagger 来布置我们的模式以用于文档目的,但是,我们将 JSON 模式用于其他功能,例如请求验证和 API 的其他部分。也就是说,我们目前正在将这些功能转移到 Swagger。话虽如此,下面是一个有助于使用我们的架构的 URL。
http://api.mailchimp.com/schema/3.0/Swagger.json
【讨论】:
【参考方案2】:我的理解是 MailChimp 正在从 JSON Hyperschema 过渡到 Swagger,因为这就是他们生成文档的方式。您可能想联系他们的 API 帮助台,看看是否可以公开使用 Swagger。
【讨论】:
以上是关于我应该如何为其 API 使用 MailChimp JSON Schema?的主要内容,如果未能解决你的问题,请参考以下文章
Mailchimp API:如何获取列表中选择特定兴趣的成员
如何为 AWS RDS 凭证创建配置文件并将其导入我的 AWS Lambda API?
我应该如何为基于回合制的多人 iPhone 棋盘游戏构建我的 DB 和 API 服务器? (考虑 nodejs、mongo、沙发等)