Сегодня меня назвали «непрофессионалом», потому что я не вложил свой ответ JSON в родительский объект.
GET /users/{id}
отвечает так:
{
"username":"atr217",
"age":35,
...
}
Они ожидали этого:
{
"user":{
"username":"atr217",
"age":35,
...
}
}
Или, может быть, это:
{
"status":200,
"message":"OK"
"data":{
"username":"atr217",
"age":35,
...
}
}
Я видел, как это делается в обоих направлениях. Является ли наилучшей практикой перенос данных в родителя? Если да, то почему? А что еще входит в родитель?
Я использую SwaggerHub и OpenAPI 3, если это имеет значение.
status
и"message":"OK"/or any other
полностью избыточны, поскольку мы можем получить их из ответа HTTP. В общем, вся информация, которую можно получить из HTTP-ответа, избыточна в данных ответа, все остальное зависит от соблюдения соглашений (команда, передовой опыт, который все согласились использовать и т. д.), но в конце концов спорный. - person lealceldeiro   schedule 24.10.2018