当我希望客户端停止长轮询时,我会发回 AJAX 响应
"HUPWAIT"
这就是萤火虫中的响应。
但是当我尝试在我的 js 中获取 AJAX 响应时,以下两个在 Firefox 和 IE9 中都返回 false:
$.ajax({
url: "/wait",
success: function(data) {
console.log(data == "\"HUPWAIT\""); //returns false
console.log(data == "HUPWAIT"); //also returns false
});
有趣的是,相同的代码在 Chrome 中返回 true:
$.ajax({
url: "/wait",
success: function(data) {
console.log(data == "\"HUPWAIT\""); //returns true in Chrome
});
当我尝试使用以下代码在 Firefox(使用 firebug)中进行调试时,我得到了一个奇怪的响应:
$.ajax({
url: "/wait",
success: function(data) {
console.log(data); //returns Document
console.log(''+data); //returns [object XMLDocument]
});
标题看起来很正常:
HTTP/1.1 200 OK
Proxy-Connection: Keep-Alive
Connection: Keep-Alive
Transfer-Encoding: chunked
Via: XXXXXXXXXX
Date: Mon, 10 Sep 2012 23:40:34 GMT
Server: nginx/1.2.3
但是在firebug的XML选项卡中有一些奇怪的东西:
XML Parsing Error: syntax error Location: moz-nullprincipal:{16915058-4ead-41ef-a63e-1265ee278d74} Line Number 1, Column 1:
"HUPWAIT"
^
有什么建议么?