前端显示服务器时间,前端展示活动倒计时使用服务器时间

  • Post author:
  • Post category:其他


获取服务器时间,可以从请求头里去取,也就是这个

316600c6a94d

具体获取方法是这样的

316600c6a94d

请原谅我放荡不羁不爱打字,因为我不知道那些大神们是怎么把代码粘进来的

由于服务器获取的是英文时间,所以有八个小时的时差,也就是会比北京时间晚八个小时

处理方法在dateTimeFormate里

316600c6a94d

代码在这里

dateTimeFormate(date) {

if (!date) {

return false

} else {

var d = new Date(date)

var year = d.getFullYear()

var month = (‘0’ + (d.getMonth() + 1)).slice(-2)

var day = (‘0’ + (d.getDate())).slice(-2)

var hour = (‘0’ + (d.getHours())).slice(-2)

var minutes = (‘0’ + (d.getMinutes())).slice(-2)

var seconds = (‘0’ + (d.getSeconds())).slice(-2)

return year + ‘-‘ + month + ‘-‘ + day + ‘ ‘ + hour + ‘:’ + minutes + ‘:’ + seconds

}

}

这个方法是我从一个大神那里复制过来的,但是找不到原链接了,请见谅

说一说我的需求背景吧

前端页面有展示活动倒计时的板块,然后一直以来我都是直接用new Date()获取时间去计算倒计时然后展示,今天突然发现,准确的说要感谢测试让我发现,如果把计算机的时候或者手机的时间往后或者往前调几个小时,诡异的事情发生了,倒计时居然显示已结束或者未开始,之后我才知道,原来new Date()是获取的设备的当前时间(我这个总是犯低级错误的小仙女),严重影响正常活动

好吧,既然影响就用服务器时间算,我一开始想到的办法,是请求接口的时候让后端传一个当前时间过来(我真的是一个很low的人,居然想到这个办法),后来从网上搜索发现可以从请求头里获取服务器时间,嗯,就是这样,好了,可以去做下一个需求了