Как определить схему произвольного объекта JSON?
Я пытаюсь определить API с помощью OAS v2, который будет возвращать полезную нагрузку вместе с некоторыми метаданными.
Другими словами, ответом на API будет:
{
"metadata":[
{
"key" :"key1",
"value": "value1"
}
],
"payload": {Valid JSON}
}
Полезные данные могут быть любыми и разными для разных сценариев, единственное ограничение - допустимый формат JSON. Итак, на данный момент я хотел бы определить его просто как объект JSON, не определяя детали уровня поля.
Как я могу сделать это в схеме OAS2/JSON?
Заранее спасибо.
1 ответ
В этом случае вы можете использовать пустую схему ({}
) для полезной нагрузки.
Схема JSON опирается на действительное значение JSON, и вы не сможете его указать, если ваш ответ является искаженным JSON.
Если значение полезной нагрузки искажено, полный ответ не будет действительным JSON.
Другими словами, эта проблема выходит за рамки JSON Schema, а скорее в область действия вашего декодера ответа (который должен завершиться с ошибкой в сформированном теле ответа).