Какой правильный код состояния ответа на запрос REST POST при обнаружении дубликата?

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

Теперь я возвращаю 409 Conflict и уже существующий объект в теле ответа. Я считаю, что это неверно, потому что:

Запрос не может быть выполнен из-за конфликта с текущим состояние ресурса. Этот код разрешен только в ситуациях, когда ожидается, что пользователь сможет разрешить конфликт и повторно отправить запрос. В теле ответа СЛЕДУЕТ включать достаточно информация, позволяющая пользователю распознать источник конфликта. В идеале объект ответа должен включать достаточно информации для пользователь или пользовательский агент для устранения проблемы; однако это может быть не так можно и не обязательно. через restpatterns.org

и в целом, похоже, что 409 больше ассоциируется с PUT.

Каков правильный ответ в этом случае? Может быть, это заголовок 303 "См. Другое и местоположение"?

18
задан miceuz 23 February 2012 в 13:52
поделиться