HTML5 PUT/DELETE方法在Chrome中不起作用?

Lee*_*var 26 html5 google-chrome http

我试图弄清楚为什么在启用HTML5的网站中,put/delete方法无法与Chrome一起使用.从我搜索到的内容来看,它听起来像Chrome已经有一段时间了,所以说我只是想找几个指针来缩小我的问题范围.也许我正在执行错误的表单,也许我的doctype是错误的,谁知道.任何帮助表示赞赏:)

所以,代码看起来像这样:

<!DOCTYPE html> 
<html> 

 <head> 
        <title> 
            some_resource
        </title> 
    </head> 
    <body> 
  <div class="content"> 
  <form method="put" action="/some_resource"> 
   <div> 
    <input id="title" name="title" placeholder="The Resource Title" type="text" value="" autofocus /> 
   </div> 
   <div> 
    <textarea id="body" name="body" placeholder="The Resource Body" required></textarea> 
   </div> 
   <div> 
    <input id="submit" name="submit" type="submit" value="Submit" /> 
   </div> 
   <!-- Resource Settings --> 
   <ul> 
    <li> 
     <input id="listed" name="listed" type="checkbox" value="y" /> 
    </li> 
    <li> 
     <input id="template" name="template" type="text" value="resource.html" /> 
    </li> 
   </ul> 
  </form> 
  </div> 
    </body> 
</html>
Run Code Online (Sandbox Code Playgroud)

只是表单的基本测试.现在我已经在最新的Ubuntu Firefox(3.6.7),Opera(10.60内部)以及谷歌最新的Linux Chrome Beta(5.0.375.99 beta)上尝试过.当我提交表单时,他们似乎都没有向服务器发送正确的put方法.现在,我相信(不是来自任何特定的研究)Firefox尚未支持这一点,并且像许多HTML5一样,它计划用于下一版本的FF.Opera我不知道,但我经常听说它与Chrome保持同步.所以..是的,我有点困惑.

提交表单时,他们会转到网址:http://localhost:8080/some_resource?title=t&body=b&submit=Submit&template=resource.html.请注意,正如预期的那样,POST工作正常.

现在有没有人有任何指针让put方法有效?有可能Linux版的测试版还没有更新到Windows版本(我认为是人们在看到PUT为Chrome工作时所谈论的内容),但我真的希望它是一个我的实施问题.

服务器必须支持PUT/DELETE吗?(我目前正在使用AppEngine Dev Server).我不知道..希望有人有一些想法:)

感谢任何回复,李

注意:到目前为止我测试的其他HTML5功能正在运行.例如,在该表单中,您可以看到自动对焦和所需属性.这些正在Chrome中按预期工作.

编辑1:只是为了澄清,我理解对这些的支持是粗略的.正如我之前回答的那样,我并不关心其他浏览器目前的支持.目前Chrome是我想要的工作,我希望Firefox能够在即将发布的版本中工作(我不知道,我只是听到他们推动HTML5很多),我不知道Opera.

所有这些只是为了测试和学习HTML5(Web Workers,localStorage等)和CSS3的新奇妙世界.我只关心最前沿的浏览器,这是匹配前沿技术:)

dar*_*asd 24

<form>标签不再支持PUT和DELETE方法.请参阅 与HTML4的HTML5差异(2010年10月19日)

  • 从HTML5规范中删除了PUT和DELETE支持,将它们作为值添加到<form />的"method"属性,例如.<form method ="put">.但是PUT和DELETE非常活跃,并且作为HTTP 1.1规范的一部分,这意味着服务器仍然可以监听它们(用于REST调用),并且我相信它仍然可以通过浏览器发送PUT和DELETE Ajax(参见http://stackoverflow.com/questions/165779/are-the-put-delete-head-etc-methods-available-in-most-web-browsers) (8认同)
  • 感谢您的提醒..任何想法应该如何实施适当的REST呢? (4认同)