我使用了一个简单的脚本来从PHP页面获取响应,但响应头在firefox和chrome中是空的,但在IE中却没有。我脚本的片段是:
var request = makeHttpObject();
request.open("GET", url, true);
request.withCredentials = "true";
request.send();
if (request.status == 200 && request.readyState == 4)
{
alert(request.getAllResponseHeader());
}
当我在调试中检查“Net”选项卡下的HTTP对象中的响应头时,我可以看到所有内容。
有人能告诉我的剧本中缺少什么吗?
答案 0 :(得分:1)
getAllResponseHeaders
特定于IE。要获取特定的响应标头,请改用getResponseHeader
。
答案 1 :(得分:0)
您使用的过程特定于Internet Explorer。尝试将jquery用于其他Ajax库,它适用于大多数浏览器。
示例代码:
$.ajax({
url: 'ajax/test.php?id=sampleId',
success: function(data) {
$('.result').html(data);
alert('Load was performed.');
alert(data);
}
});
现在在test.php页面上,您可以编写服务器脚本。这将在大多数使用javascript的浏览器上运行。
答案 2 :(得分:-2)
使用普通的HTTP请求,您必须为每个浏览器创建一个,因为我记得。您只使用一种方式,因此它不适用于所有浏览器,因为并非所有浏览器都能理解这一点。也许你可以看看JQuery。它简单,快速,适用于所有市长浏览器。