0

我正在尝试使用 OAS v2 定义一个 API,它将返回一个有效负载以及一些元数据。

换句话说,对 API 的响应将是:

{
  "metadata":[
   {
     "key" :"key1",
     "value": "value1"
   }
  ],
  "payload": {Valid JSON}
}

有效负载可以是任何东西,并且在不同的场景中有所不同,唯一的限制是它必须是有效的 JSON 格式。因此,此时,我想将其定义为 JSON 对象,而不定义字段级别的详细信息。

如何在 OAS2/JSON 模式中做到这一点?

提前致谢。

4

1 回答 1

0

在这种情况下,您可以对有效负载使用空模式 ( {})。

JSON Schema 依赖于有效的 JSON 值,如果您的响应是格式错误的 JSON,您将无法提供它。

如果有效负载值格式错误,则整个响应将不是有效的 JSON。

换句话说,这个问题不在 JSON Schema 范围内,而是在您的响应解码器范围内(在格式错误的响应正文上应该会失败)。

于 2018-10-11T10:27:40.207 回答