服务器用的是 GMT ,假设某个活动 GMT00:00 结束,部分地区当地日期还在 00:00 之前,容易造成混淆,怎么得出 client 的 local time 和 00:00 比较。
1
XianZaiZhuCe 2016-06-02 08:23:49 +08:00 via iPhone
难道不是统一时间?
|
2
SlipStupig 2016-06-02 08:27:19 +08:00
@XianZaiZhuCe 有些服务器使用的是标准的 0 时区的时间,我国用的是+8 的时间,之前遇到过这个坑
|
3
hahastudio 2016-06-02 08:32:53 +08:00
你是要活动结束在客户端当地时间的 0 点还是服务器时区的 0 点?
这个一般都是服务器时区吧? 很简单啊,请求过来 time.time() 看是不是 0 点 |
4
jimzhong 2016-06-02 08:37:04 +08:00
按理说应该以 UTC 时间为准。
|
5
Ahri 2016-06-02 08:39:27 +08:00 1
我觉得楼主意思是活动时间还是统一服务器为准,但是在网页显示结束时间为本地时间。这个必须要在客户端处理, JS 从服务器获取 UTC 时间再作时区转换。
|
6
XianZaiZhuCe 2016-06-02 09:42:02 +08:00 via iPhone
@SlipStupig 就是说公司的服务器,时区并不统一?
|
7
lbfeng OP @hahastudio 当地时间的 0
|
9
yangtukun1412 2016-06-02 11:44:40 +08:00
需要客户端上传所在时区
|
10
hahastudio 2016-06-02 12:36:00 +08:00
那你只能去让客户端提供时区啊
关键是为什么会是这么想的需求,难道你们活动开始的时间每个时区也不一样么= = |
11
ryd994 2016-06-02 14:22:18 +08:00
那我岂不是改改电脑时区就可以绕过结束时间了?
|
12
Ahri 2016-06-02 15:28:07 +08:00
这个需求太奇怪了。
|
13
m0nkeyd 2016-06-02 17:22:53 +08:00 via Android
不如换一个方法,从 IP 转换成时区,但是还有夏令时问题,小问题挺多的还
|
14
ibigbug 2016-06-02 19:17:55 +08:00
我在北京,我告诉服务器说我在扭腰,你让我参加吗?
|
15
julyclyde 2016-06-03 22:42:49 +08:00
首先,中国并不是 UTC+8 ,而是 CST ,这是完全不同的概念:
考虑到夏令时、朝鲜调 9 区到 8.5 时区之类的破事,有些时刻是“依法不存在”的 记录客观事件,就要用客观时间,按 UTC 记录。展示的时候再本地化出来 |