发表于: 2017-07-14 23:24:46
1 861
今天完成的事情:修复#3630:写日报时间为本地,而不是服务器时间。
明天计划的事情:继续改bug
遇到的问题:
获取服务器的时间:
在Network的http请求的头里面可以看到返回的时间,这个时间是服务器的时间。
如果用localhost打开,服务器是本地的nginx,所以看到Date的是本地的时间。在dev环境,Date则是服务器的时间。
将获取时间搓封装成了服务,放在修真院的commonUtil服务中
//获取服务器时间戳
getServerTime: function() {
var req = new XMLHttpRequest();
req.open('GET', document.location, false);
req.send(null);
//获取到报文的头
var headers = req.getAllResponseHeaders().toLowerCase();
var strs=headers.split("\n");
var stringTime = strs[0];
return Date.parse(new Date(stringTime));
}
上面的headers打印出来是字符串,用换行符分隔,所以通过split将字符串转化成数组,数组第一个元素就是服务器的时间
最后通过Date.parse(new Date(stringTime));转化为时间戳
收获:了解了http协议
评论