使用JQuery的ajax()获取服务器时间。代码如下:
var originalDate = new Date($.ajax({async: false}).getResponseHeader("Date"));
var date = originalDate + (3600000 * 8);
console.log(date);
这样能出来正确的时间,但是有警告说是不推荐使用同步XMLHttpRequest:
于是去掉async:false
改成异步,但是为什么获取的时间就错了呢(如下图)?
要怎么才能正确获取服务器时间而且没警告?
ps:用原生的ajax也一样。
因为是异步的, 所以你不可能在 $.ajax
之后就用 getResponseHeader("Date")
得到服务器响应过来的时间.
$.ajax({
success:function(result, status, xhr){
var originalDate = new Date(xhr.getResponseHeader("Date"));
var date = originalDate + (3600000 * 8);
console.log(date);
}
});