在Java代码中使用new Date(),获取的是本机时间;
但是在Javascript 中使用new Date(),获取的却是访问该页面的客户端时间。
这样,就可能会出现一个问题:我的电脑时间比正常时间要快,我访问一个页面,初始化打开时,默认 make_date 在 js 中使用 new Date() 生成,值是我电脑的时间。等页面提交,使用 Java 代码new Date() 生成 check_date,值是服务器时间。因为我本地电脑时间快了,就导致 make_date 反而比 check_date 大的情况发生。
为了解决这个问题,在js中使用如下代码获取服务器时间。
js
// 获取服务器时间
new Date($.ajax({async: false}).getResponseHeader("Date"))