Я строю сервер, который позволяет клиентам хранить объекты. Эти объекты полностью сконструированы на стороне клиента, дополнены идентификаторами объектов, которые являются постоянными в течение всего времени существования объекта.
Я определил API, чтобы клиенты могли создавать или изменять объекты с помощью PUT:
PUT /objects/{id} HTTP/1.1
...
{json representation of the object}
{Id} - это идентификатор объекта, поэтому он является частью Request-URI.
Теперь я также рассматриваю возможность разрешения клиентам создавать объект с помощью POST:
POST /objects/ HTTP/1.1
...
{json representation of the object, including ID}
Поскольку POST подразумевается как операция добавления, я не уверен, что делать, если объект уже существует. Должен ли я рассматривать запрос как запрос на изменение или я должен вернуть код ошибки (который)?