Javascript 网页';刷新后的HTTP标头内容更改-Internet Explorer

Javascript 网页';刷新后的HTTP标头内容更改-Internet Explorer,javascript,html,json,xmlhttprequest,http-headers,Javascript,Html,Json,Xmlhttprequest,Http Headers,我有一个仪表板,它不断地从SAP服务器检索数据。我找到了一种检索当前服务器日期的方法,以显示仪表板上次更新的时间以及该日期打印到DOM的时间 //Method from: https://stackoverflow.com/a/37934624/7626277 var req = new XMLHttpRequest(); req.open('GET', document.location, false); req.send(null); var headers = req.getAllRes

我有一个仪表板,它不断地从SAP服务器检索数据。我找到了一种检索当前服务器日期的方法,以显示仪表板上次更新的时间以及该日期打印到DOM的时间

//Method from: https://stackoverflow.com/a/37934624/7626277

var req = new XMLHttpRequest();
req.open('GET', document.location, false);
req.send(null);
var headers = req.getAllResponseHeaders().toLowerCase();

var arr = headers.split('\r\n');
var response = arr.reduce(function(acc, current, i) {
  var parts = current.split(': ');
  acc[parts[0]] = parts[1];
  return acc;
}, {});
console.log(response); //or initial alert

//Example response 
{
  date: "tue, 12 feb 2019 10:49:10 gmt",
  cache - control: "max-age=604800",
  last - modified: "mon, 11 feb 2019 09:07:33 gmt",
  server: "sap netweaver application server 7.53 / as java 7.50",
  content - encoding: "gzip",
   …
}
这在调试模式下可以正常工作,每个请求都返回当前响应,但在Internet Explorer中,如果禁用调试模式,则会将“undefined”打印到DOM,但页面内容仍会使用正确的数据进行更新

我的问题是: 我是否缺少IE中的配置,或者这是一个已知问题,或者我的请求方法是否错误?


查看服务器发送的cookie,过期日期似乎是昨天。服务器上的日期时间设置是否正确?

您是否仅在IE中获得“未定义”的信息?它在其他浏览器中正常工作吗?对于IE,您必须使用
newActiveXObject(“Microsoft.XMLHTTP”)
而不是
newXMLHttpRequest()是!在Chrome中工作非常完美,但只允许将IE与我们的仪表板一起使用@randomSoul@DmitryS. 我刚刚试过这个,而且它似乎只在调试模式下工作。你可能有道理。第二个请求将日期返回为“expires”