abh*_*nyu 3 javascript angularjs
我正在使用 AngularJS 客户端应用程序并处理日期和时间。我的问题是任何人都可以更改本地系统日期,为了保护这一点,我想使用服务器日期而无需任何获取或发布请求。有没有办法使用 JavaScript 获取服务器日期?
如果您在客户端运行 JavaScript ,则查找服务器时间的唯一方法是询问服务器当前时间是多少。这里没有魔法。您需要向服务器发出请求。
选项:
请注意,由于网络延迟,不可能获得服务器的精确时间,但您可以使用此答案中的代码(已修改)获得非常接近的时间:
var offset = 0;
function calcOffset() {
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", "https://stackoverflow.com/", false);
xmlhttp.send();
var dateStr = xmlhttp.getResponseHeader('Date');
var serverTimeMillisGMT = Date.parse(new Date(Date.parse(dateStr)).toUTCString());
var localMillisUTC = Date.parse(new Date().toUTCString());
offset = serverTimeMillisGMT - localMillisUTC;
}
function getServerTime() {
var date = new Date();
date.setTime(date.getTime() + offset);
return date;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7797 次 |
| 最近记录: |