我只是使用xml http请求来获取服务器的当前时间。
代码如下:
var xmlHttp;
function srvTime(){
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 (eerr3) {
//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 xmlHttp.getResponseHeader("Date");
}
var st = srvTime();
var date = new Date(st);
var localTime = new Date();
document.write("Local machine time is: " + localTime + "<br>");
document.write("Server time is: " + date);
我列出了两次,第一次是客户端本地时间,第二次是服务器时间。
时间模式如下(工作日-月-日期-年HH:MM:SS时区(区域)):
当地机器时间为:2017年11月22日星期三15:44:00 GMT+0800(HKT)
服务器时间为:2017年11月22日星期三14:44:02 GMT+0800(HKT)
我需要做一个if条件,即客户端的本地时间与服务器时间不匹配,假设客户端的本地时间与服务器时间的误差超过2小时,它将弹出一个
alert("your time is not match!");
.