api - 关于 Swagger 2.0 中 XML 的问题

标签 api swagger

我正在使用可以返回 XML 和 JSON 的 API,并且正在研究是否有任何方法可以在 Swagger 中表示 XML 模式,但看起来没有。

我有 2 个跟进问题:

  1. 如果我的 XML 返回 API 之一在“示例”对象中发布了 XML 样本,那也没问题,对吧?

  2. 模式对象有一个 XML 对象。我阅读了描述,但我不确定这可以用于哪些情况?谁能举个例子吗?如果可以的话,这真的很有帮助。

我只是想确保我没有遗漏任何可以用来使我的 API 元数据更具描述性的东西。

谢谢你们。

最佳答案

当谈到同时返回 XML 和 JSON 的 API 时,Swagger 假定它们共享一个基本上可以互换的通用结构。

也就是说,如果你有这个 JSON:

{ “键1”:“值1”, “键2”:“值2” }

XML 看起来像:

<object>
  <key1>value1</key1>
  <key2>value2</key2>
</object>

如您所见,仍然存在细微差别。 XML 需要一个包含元素,JSON 中不存在该元素。这是 Swagger 规范中的 XML 对象的用武之地,因为它允许您添加此附加信息。它还允许您将字段定义为属性,声明使用的命名空间并允许更好地控制值数组,这些值在 XML 中有多种变体,而不是 JSON。

虽然我们没有大量的 XML 对象示例,但您可以在这里找到一个 - https://github.com/swagger-api/swagger-spec/blob/master/fixtures/v2.0/json/models/modelWithXmlAttributes.json .我需要在规范中添加更多细节,希望在接下来的几周内完成。

至于示例字段 - 它的值是一个自由格式的 JSON 对象。你可以做的是这样的:

{
  "xml" : "<object>.....</object>"
}

关于api - 关于 Swagger 2.0 中 XML 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27094684/

相关文章:

php - cURL 请求 - 我该如何做?

jquery - 使用 jQuery 匿名上传图像到 Imgur API v3?

eclipse - java.lang.NoSuchMethodError : org.语义web.HermiT.Reasoner.<init>(来源未知)

rest - OpenApi 3 从外部文件导入模式

java - 谷歌云端硬盘 API : How can I have an access token without asking for Authorization everytime

java - 无法在 Spring 项目中配置 Swagger,获取 File not found 异常

c# - 如何为 Asp.net 核心 OData api 启用 swagger

swagger - 货币是什么类型?

java - 当我尝试获取 swagger.json 时总是收到错误 404

api - 网站创建者的网络分析解决方案