REST API - 要PUT还是POST?

Pau*_*bow 3 rest

可能重复:
REST中的PUT与POST

我知道这已经讨论了很多,虽然我有点理解,但我并没有完全理解.我想如果有人可以通过以下示例回答这个问题,那么这将使其易于理解.

创建新用户 - 将新用户添加到发送用户名,密码,电子邮件的数据库.PUT还是POST?

我想也许是PUT,因为我不想拥有重复的用户,PUT就像删除和替换.但是,我有检查,以避免用户被添加两次,所以也许我应该使用POST?

更新用户 - 更改电子邮件或密码.PUT还是POST?

我可以使用URI api/update/my_username,然后通过正文发送新的电子邮件,那么这应该是PUT吗?我也可以在URI中发送它,例如api/update/my_username/email/new_email@email.com

Reg*_*for 10

创建 - POST,更新 - PUT,删除 - 删除.

为了更好地理解HTTP Verbs的使用,请参阅RFC http://tools.ietf.org/html/rfc2616

此外,PUT请求可以创建实体,但是应该创建201响应代码而不是200 OK和204 No Content.但这取决于您是否允许/实施此类行为.