大多数REST的教程安排资源如下:设计REST风格的URL的网页
GET /car/ -> list of cars
GET /car/<id>/ -> info about specific car
POST /car/ -> create a new car
但构建Web应用程序在浏览器中使用时,存在很少讨论,然后才能发布到缺失的环节/汽车/,你需要获得一个表格来创建一个新的资源(汽车)。这个表单的URL应该是什么?
我通常使用:
GET /car/new/ -> form for creating a new car
POST /car/new/ -> redirect to /car/<id>/ if item is created else show form with invalid fields highlighted
但根据http://www.slideshare.net/Wombert/phpjp-urls-rest这不是一个很好的REST URL。我可以看到它为什么不是一个好的REST,因为“新”实际上用作动词而不是资源,但表单应该在哪里,因为GET /car/
已用于列出汽车,因此您不能使用GET /car/
新车的形式。
总之,我的问题是:“创建资源表单的RESTful URL是什么?”
在一个稍微相关的说明中,即使在Web服务中,依靠客户端事先知道架构有时并不总是明智的,因此即使在Web服务中,也可能需要客户端请求资源的当前模式。 AFAICS,这与需要获取创建表单(即表单有点像描述如何构建POST查询以创建资源的模式)类似的情况。我的思路是否正确?
不能满足这个足够!在任何地方都没有提到这个缺失的链接,可悲的是也没有令人满意的答案。 – aefxx