Я хочу понять лучшие практики, которые необходимо учитывать при разработке ответов API.
Постановка задачи
Предположим, у меня есть конечная точка /v1/projects/all которые возвращают список проектов, и его ответ выглядит примерно так
{
"projects": [{
"id": "001",
"name": "test nw UPM member",
"isPublic": false,
"isShared": false,
}, {
"id": "002",
"name": "move test",
"isPublic": false,
"isShared": true,
}]
}
Обратите внимание на isShared флаг указывает, используется ли проект совместно с другими пользователями. Если это
- истинный — Это означает, что к проекту предоставлен доступ другому пользователю.
- ложный — Это означает, что проект не передается другому пользователю.
Теперь у меня есть другой API, который дает мне только список общих проектов.
Конечная точка выглядит примерно так /v1/projects/shared-by-me Ответ на это выглядит ниже
{
"projects": [{
"id": "002",
"name": "move test",
"isPublic": false,
}]
}
Примечание: Я не пройду isShared здесь, так как сама конечная точка указывает, что проекты разделяются мной, что означает isShared всегда будет верным в этом случае.
Вопрос
Каким должен быть ответ в соответствии с передовой практикой? Должен ли я включить isShared собственность в/v1/projects/shared-by-me или это нормально не включать?
Реализация на стороне клиента
Предположим, что на стороне клиента есть общий компонент реакции, который отображает детали на основе этого ответа. так что если я не пройду isShared на стороне клиента рекомендуется добавлять вручную?
![Лучшая практика для создания ответа API [closed] TheFAQ.ru](https://thefaq.ru/wp-content/uploads/2023/01/logo-250.png)