我正在尝试找到有关最佳和最常见的RESTful网址操作的一些信息.
例如,您使用什么URL来显示项目的详细信息,编辑项目,更新等.
/question/show/<whatever>
/question/edit/<whatever>
/question/update/<whatever> (this is the post back url)
/question/list (lists the questions)
Run Code Online (Sandbox Code Playgroud)
哼.感谢任何人的帮助:)
Bri*_*ndy 171
使用网址指定您的对象,而不是您的操作:
请注意您首先提到的不是RESTful:
/questions/show/<whatever>
Run Code Online (Sandbox Code Playgroud)
相反,您应该使用您的URL来指定您的对象:
/questions/<question>
Run Code Online (Sandbox Code Playgroud)
然后,您在该资源上执行以下操作之一.
得到:
用于获取资源,查询资源列表以及查询资源的只读信息.
要获取问题资源:
GET /questions/<question> HTTP/1.1
Host: whateverblahblah.com
Run Code Online (Sandbox Code Playgroud)
列出所有问题资源:
GET /questions HTTP/1.1
Host: whateverblahblah.com
Run Code Online (Sandbox Code Playgroud)
POST:
用于创建资源.
请注意以下是一个错误:
POST /questions/<new_question> HTTP/1.1
Host: whateverblahblah.com
Run Code Online (Sandbox Code Playgroud)
如果尚未创建URL,则在指定名称时不应使用POST来创建URL.这应该导致资源找不到错误,因为还不存在.您应该首先在服务器上放置资源.您可以争辩说,通过创建一个新问题,您还可以更新/ questions资源,因为它现在会在其问题列表中再返回一个问题.
你应该做这样的事情来使用POST创建资源:
POST /questions HTTP/1.1
Host: whateverblahblah.com
Run Code Online (Sandbox Code Playgroud)
请注意,在这种情况下,未指定资源名称,将返回新对象URL路径.
删除:
用于删除资源.
DELETE /questions/<question> HTTP/1.1
Host: whateverblahblah.com
Run Code Online (Sandbox Code Playgroud)
放:
用于在指定资源URL时创建资源或覆盖它.
对于新资源:
PUT /questions/<new_question> HTTP/1.1
Host: whateverblahblah.com
Run Code Online (Sandbox Code Playgroud)
要覆盖现有资源:
PUT /questions/<existing_question> HTTP/1.1
Host: whateverblahblah.com
Run Code Online (Sandbox Code Playgroud)
......是的,他们是一样的.PUT通常被描述为"编辑"方法,因为通过用稍微改变的版本替换整个资源,您已经编辑了客户端下次执行时将获取的内容.
在HTML表单中使用REST:
方法内容属性是枚举属性,具有以下关键字和状态:
- 关键字GET,映射到状态GET,表示HTTP GET方法.
- 关键字POST,映射到状态POST,表示HTTP POST方法.
从技术上讲,HTTP规范并不仅限于那些方法.您在技术上可以自由添加任何您想要的方法,但在实践中,这不是一个好主意.我们的想法是每个人都知道你使用GET来读取数据,所以如果你决定使用READ,它会让人感到困惑.那说......
补丁:
这是在正式RFC中定义的方法.它被设计用于当您希望仅对资源发送部分修改时,它将像PUT一样使用:
PATCH /questions/<new_question> HTTP/1.1
Host: whateverblahblah.com
Run Code Online (Sandbox Code Playgroud)
就是把差异有发送整个资源,不管它有多大相比,有什么实际改变,而PATCH你可以给刚刚更改.
All*_*nde 11
假设/questions/10是一个有效的问题,那么该方法用于与之交互.
POST添加到它
PUT创建或替换它
GET查看/查询它
并删除它...删除它.
网址不会改变.
| 归档时间: |
|
| 查看次数: |
47368 次 |
| 最近记录: |