0

我一直认为 Post in Rest 的意思是“创建”。但是在阅读了规范http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.5

似乎它可以不仅仅是创建?Stormpath 在他们关于 rest api 设计的截屏视频中也说明了这一点。

根据 Stormpath,Post 的意思是“进程”,几乎可以是任何东西。这是正确的看待它的方式吗?

我可以使用 Post 为我的资源触发自定义操作吗?

4

1 回答 1

1

理论上,POST 请求应该尝试在服务器上创建或修改某些资源。正如@Tichodroma 指出的那样,幂等请求仅在第一次发送时才会影响此更改,否则重要的是服务器上的某些状态将被请求更改。

更实际。当请求有效负载太大而无法放入 GET URI(例如大文件上传)时,通常使用 POST 请求。这通常是为了避免414 Request-URI Too Long响应而故意违反 HTTP 标准。

就措辞而言,我不知道我是否喜欢“处理”,因为即使是 GET 请求,通常也会被“处理”以确定要返回的资源。我认为的主要区别是服务器上某些状态的变化。

于 2013-09-02T21:31:24.607 回答