IE有时会使用空主体而不是POST来发出HEAD请求

时间:2014-07-24 10:06:37

标签: internet-explorer http iis

我们的网络应用程序出现了奇怪的情况。我们有几个页面上有HTML表单。当用户按下按钮时,表单被提交。有时这是通过Javascript(如document.forms.myform.submit())完成的,其他一些表单是在jQuery的帮助下提交的:

$.post($("form[name=myform]")[0].action,
       $("[name=myform]").serialize(), 
       fnCallback, 
       "json");

这样每天可以正常工作999次。它会导致对我们的IIS网络服务器发出POST请求 但是,在1000次Internet Explorer中,首先发送一个空主体的同一页面的HEAD请求。这导致我们的网络服务器出现错误情况(因为它需要正文中的数据) 一秒钟之后,预期的POST将被正确发送并继续生效。

我知道有时会在 GET 请求之前发送一个HEAD请求,并且因为GET不应该有一个正文,所以这应该可以正常工作。在这种情况下,HEAD在 POST 之前发送。

它很少发生,但到目前为止,我只看到(浏览)IE9 / IE10 / IE11的这种行为,从未与IE8。然而,这可能是巧合。

注意:

  • 该网站托管在互联网上,因此(集成)身份验证无法发挥作用。
  • 所有通讯都严格通过https
  • 表格不是特别大,可能要提交100个字节。
  • 要提交的数据只是纯文本(或json),Excel不以任何方式涉及
  • 所有内容都在同一个域中,不涉及跨域。

0 个答案:

没有答案