RESTful API - 一次可写资源

时间:2015-08-21 12:30:54

标签: rest http

在RESTful API(在HTTP中)中表示一次可写资源的惯用方法是什么?在CRUD术语中,应该可以创建资源但禁止更新吗?

编辑:

只是在下面对Rosenheimer的答案的评论中添加澄清。我想允许客户端指定URL而不是由POST处理程序生成它。

3 个答案:

答案 0 :(得分:0)

如果资源之前不存在(这意味着“一次可写”实际上是资源的“创建”)那么就可以很容易地调用父POST,如下所示:{ {1}}发送资源。 稍后,不允许POST example.com/ResourcesPUTPATCH的特定资源,其中example.com/Resources/123将是资源的标识符。

因此资源可以写一次但以后不能更改。

答案 1 :(得分:0)

您可以使用HTTP状态layoutParams.removeRule(RelativeLayout.CENTER_VERTICAL); 405 Method Not Allowed禁止后续更新。

有些人使用POST来创建资源:

403 Forbidden

有些人可能会使用# C of CRUD POST ./phones -> 200 OK with the id of the object created # R or CRUD GET ./phones/{id} # U of CRUD PATCH/PUT ./phones/{id} # D of CRUD DELETE ./phones/{id} 来创建对象,但使用PUT的问题是该方法对客户端有2个含义。

答案 2 :(得分:0)

我认为正确的做法是在第一次保存资源时接受PUT方法,并在后续尝试更新现有资源时返回409 Conflict HTTP状态代码。