RESTful API design: should unchangable data in an update (PUT) be optional?

Удостоверьтесь, что расширение также:


ext2, ext3 или ext4 , но я рекомендовал бы выбрать файловая система ext4-journouling . Точка монтирования находится в /

29
задан Blake Senftner 9 February 2011 в 00:02
поделиться

1 ответ

Лично оба способа приемлемы ... однако на вашем месте я выберу вариант А (проверьте поля только для чтения, чтобы убедиться, что они не изменены, иначе выдает ошибку). В зависимости от масштаба вашего проекта, вы не можете предположить, что потребители знают о вашем Restful WS, потому что большинство из них не читает документацию или WADL, даже если они опытные. :)

Если вы не предоставите потребителям немедленную обратную связь о том, что определенные поля доступны только для чтения, у них будет ложное предположение, что ваш веб-сервис позаботится обо всех изменениях, которые они внесли без двойной проверки, ИЛИ , как только они обнаруживают «противоречивые» обновления, они жалуются другим на то, что ваш веб-сервис содержит ошибки.

Вы можете подходить к этому двумя различными способами, если поле только для чтения не соответствует исходным значениям ...

  1. Не обрабатывать запрос. Отправьте код конфликта 409 и конкретное сообщение об ошибке.
  2. Обработать запрос, отправить 200 OK и сообщение о том, что изменения, сделанные в полях только для чтения, игнорируются.
15
ответ дан 28 November 2019 в 02:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: