我正在开发一个Python Web应用程序作为学习练习,并且正在研究让我的应用程序成为RESTful。如何在RESTful Web应用程序中执行“不太流行”的HTTP操作?
为此,我希望能够处理适用的各种HTTP动作/动词。例如,如果id为12的小部件用URI http://domain/widget/12表示,并且我想让最终用户能够删除此小部件,则他们应该能够针对/ widget/12发出HTTP DELETE请求。
但是,据我所知,HTML表单只支持GET和POST,那么我将如何使用“不太受欢迎的”HTTP操作(如DELETE)进行HTTP请求呢?
假设在小部件12的视图页面(由HTTP GET返回),我想包括一个只有一个提交按钮的表单来删除该小部件。例如:
<form action="/widget/12" method="DELETE">
<input type="submit" value="Delete Me!" />
</form>
但是,已经确定HTML表单不支持方法属性的DELETE。那么在这种情况下,从客户端执行DELETE请求的RESTful方式是什么?
rails有一个很好的方式,你使用POST,但包含一个_method参数,以便服务器知道你的意思。 – 2011-02-20 01:32:50