Я пытаюсь смоделировать API с помощью комбинации Api Blueprint и Drakov. Однако для одной конкретной конечной точки я заранее не знаю, какой будет полезная нагрузка запроса. См. приведенный ниже код.
# Group Stuff
Description about stuff.
## Main Stuff Resource [stuff/{userId}/response/{responseId}]
+ Parameters
+ userId: specialUser (string, required) - ID of user
+ responseId: 0f9d78ee-005056ad6f10 (string, required) - ID for a particular response.
### Submit Survey Form [POST]
+ Attributes
+ attribute1 (array[object]) - Description for attribute 1
+ attribute2 (array[object]) - Description for attribute 1
+ Request (application/json)
{attribute1:[],attribute2[]}
+ Response 201 (text/plain; charset=utf8)
+ Headers
X-XSS-Protection: 0
Vary:Origin,Accept-Encoding
Access-Control-Allow-Credentials:true
+ Body
http://fakeurl.com
Приведенный выше код работает, но только тогда, когда полезная нагрузка запроса равна точно {attribute1:[],attribute2:[]}
. Даже разные пробелы, кажется, подсказывают, возвращая пользователю 404
и журнал ошибок от Дракова: [WARNING] JSON body could not be parsed. Using body as is.
Я пробовал удалить раздел Attributes
, удалить раздел Request
, удалить пример JSON из раздела Request
, удалить все, кроме раздела Response
, а также использовать раздел Schema
. Кажется, ни один из них не работает, и я не могу найти упоминания об этом в документах API Blueprint.
Как я могу всегда возвращать этот ответ на запрос POST в этой конечной точке, если я не знаю, какой формат полезной нагрузки запроса или содержимое attribute1
и attribute2
будет?