REST中的操作与CRUD

Naf*_*Kay 8 rest restful-architecture

除了简单的创建(POST),读取(GET),更新(PUT)和删除(DELETE)之外,用REST执行操作是否合适?我对整个RESTful神学都很陌生,所以请耐心等待,但我应该如何完成以下任务:

  • 我有一个需要与另一个Web服务交谈的Web服务.Web服务A需要在Web服务B上"保留"对象.此对象具有有效超时,但如果需要可以立即删除.它本质上是一个美化的权限系统,它要求Web服务在采取任何操作之前在Web服务B上保留空间.

我最初的想法是1.启用某种身份验证,2.在服务器端响应GET调用,保留空间并返回结果,以及3.通过DELETE调用立即提供对象的"保留".这仍然是RESTful吗?

Bru*_*uno 3

是的,休息时执行操作是可以的。重要的是这些行动应该以你们交换的陈述为指导。

如果您考虑一下网络的工作方式(通过浏览器),您就会一直这样做:您会得到一个 HTML 表单,让您选择可以执行的许多操作。然后,您提交表单(通常通过POST)并执行操作。

能够通过编程客户端使用是件好事DELETE(这是浏览器中的非 AJAX 请求不支持的),但是 RESTful 系统的整体方法应该与您在网站上找到的方法非常相似(即焦点应该在表示上:相当于您系统中的网页)。

GET不应该有副作用,所以不要用来GET进行预订本身,POST而是使用类似的东西。