我是 jQuery 新手,想使用普通的 HTTP 1.0 发出 POST 请求并关闭连接,而不是当前保持活动状态的 HTTP 1.1 连接。
下面是发布帖子的按钮的 onClick 处理程序。
$( "#certGenBtn" ).click( function( event ) {
$.ajax({
type: "POST",
url: "http://localhost:9099/",
data: { testVal : "data" },
success: function( data ) {
alert( "whoops" );
},
beforeSend: function( xhr ) {
xhr.setRequestHeader( "Connection", "close" );
}
});
});
在服务器端转储的原始输出如下:
POST / HTTP/1.1
Host: localhost:9099
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:21.0) Gecko/20100101 Firefox/21.0
Accept: */*
Accept-Language: en-ZA,en-GB;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Referer: http://localhost/
Content-Length: 12
Origin: http://localhost
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache
testVal=data
连接关闭标头被“忽略”,并且连接对服务器保持打开状态,因此最后一行testVal=data
只有在我重新加载页面后才能通过(我认为这是因为连接随后被浏览器关闭)。我认为这是我遗漏的非常简单和/或愚蠢的东西,但在文档中看不到任何内容。