假设我的Web应用程序在服务器端完全支持PUT和DELETE,我应该使用它们吗?
基本上我的问题是有多少浏览器支持这个:
<form method="PUT">
或
<form method="DELETE">
除了兼容REST之外,使用这两种HTTP方法有什么好处吗? (假设替换这两种方法是常用的POST)
答案 0 :(得分:72)
您的问题涉及两个密切相关但又分开的标准,即HTTP和HTML。 PUT和DELETE方法是HTTP的一部分。在HTTP中,它们在RESTful接口和基于HTTP的其他服务(例如Webdav。
)中有明显的用途HTML版本4仅定义了表单的POST和GET的使用。此时HTML5看起来好像可能支持其他方法。 [注意,支持不包括在当前的W3草案中]
任何当前的浏览器支持(我都没有直接意识到)将是非常有限的,并且只是作为最前沿的实验非常有用。
答案 1 :(得分:27)
GET,POST,PUT和DELETE(还有其他)是HTTP标准的一部分,但此时您只能使用HTML格式进行GET和POST。
正如安德鲁所说,你可以在AJAX请求中使用PUT和DELETE;但是,这仅适用于某些浏览器(请参阅http://api.jquery.com/jQuery.ajax/)。
答案 2 :(得分:14)
不,只有GET
&amp; POST
是method
属性的有效值。有关详细信息,请参阅HTML5 spec。
我相信你可以在AJAX请求中使用它们。