js 获取网络时间:
由于new Date
获取的是客户本地时间,有些情况下我们需要获取网络时间,避免用户更改本地时间而产生的某些功能冲突,则我们可以通过如下方法从浏览器获取我们服务器上的时间!
function getServerTime(){
let xmlHttp;
try {
//FF, Opera, Safari, Chrome
xmlHttp = new XMLHttpRequest();
}
catch (err1) {
//IE
try {
xmlHttp = new ActiveXObject('Msxml2.XMLHTTP');
}
catch (err2) {
try {
xmlHttp = new ActiveXObject('Microsoft.XMLHTTP');
}
catch (err3) {
//AJAX not supported, use CPU time.
alert("AJAX not supported");
}
}
}
xmlHttp.open('HEAD',window.location.href.toString(),false);
xmlHttp.setRequestHeader("Content-Type", "text/html");
xmlHttp.send('');
return new Date(xmlHttp.getResponseHeader("Date"));
}
console.log(getServerTime())
console.log(getServerTime().getTime())
提示:
不能在本地启动服务端口测试 如:3000,8080 获取的还是本地的时间,因为你是本地起的服务!