发表于: 2017-07-14 23:24:46

1 862


今天完成的事情:修复#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协议


返回列表 返回列表
评论

    分享到