我正在构建一个服务器,允许客户端存储对象。这些对象在客户端完全构造,包括对象ID在内,而这些ID对于对象的整个生命周期都是固定的。
我已经定义了API,使得客户端可以使用PUT创建或修改对象:
PUT /objects/{id} HTTP/1.1
...
{json representation of the object}
{id}是对象的ID,因此它是请求URI的一部分。
现在,我还考虑允许客户端使用POST创建该对象:
POST /objects/ HTTP/1.1
...
{json representation of the object, including ID}
由于POST是“追加”操作,如果对象已经存在,我不确定该怎么办。 我应该将请求视为修改请求还是返回某些错误代码(哪个)?