API REST возвращает новый ресурс при обновлении существующего - PullRequest
0 голосов
/ 15 ноября 2018

В моем приложении есть ресурс ProjectStep, и мне нужно создать конечную точку API, которая будет использоваться для обновления моего ProjectStep, чтобы пометить его как завершенный и создать следующий ProjectStep. В моем REST API я мог просто сделать что-то вроде этого:

PATCH /project-mark/1
POST  /project-mark

Но я бы хотел использовать только один запрос для обновления текущего шага, создания нового шага и возврата только что созданного ProjectStep.

Какой метод вы бы использовали? Запрос PATCH, обновляющий существующий ресурс и возвращающий другой ресурс, не является хорошей идеей.

Спасибо в

1 Ответ

0 голосов
/ 15 ноября 2018

Используйте запрос PUT, см. Эту ссылку

/483624/post-protiv-pochty-v-otdyhe

Используйте API PUT в основном для обновления существующего ресурса (если ресурс не существует, API может принять решение о создании нового ресурса или нет).Если новый ресурс был создан с помощью API PUT, сервер происхождения ДОЛЖЕН проинформировать пользовательский агент через ответ с кодом ответа HTTP 201 (Создано), и если существующий ресурс изменен, либо 200 (ОК), либо 204 (Нет содержимого)Коды ответа ДОЛЖНЫ быть отправлены, чтобы указывать на успешное завершение запроса.

Если запрос проходит через кэш, а Request-URI идентифицирует один или несколько кэшированных в настоящее время объектов, эти записи ДОЛЖНЫ рассматриваться как устаревшие.Ответы на этот метод не кэшируются.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...