2012-01-12 76 views
1

我想将两个客户端时间(由unix时间戳表示)转换为以UTC时区表示的标准化服务器时间。是客户端JavaScript计算相对于用户时区的Unix时间戳吗?

我想使用Java Joda时间库来做到这一点。

因此,如果我在两个不同的时区有两个客户端,并且我使用JavaScript代码来获取每个Unix时间戳并将长整数值传递给服务器上的Java代码(UTC时区),我首先需要将这些时间从用户的时区转换到服务器时区,如果我想将它们存储为可比日期,或者Unix时间戳是否意味着如果我将它们转换为服务器上的Joda DateTime(如下所示),它会自动创建DateTime每个相当于服务器的时区?

long clientTime = 1326329941540; // passed from client to server 
DateTime clientTimeAsJoda = new DateTime(clientTime); 
// (A) Does this convert clientTimeAsJoda to server time zone? 

或做我需要做这样的事情:

long clientTime = 1326329941540; // passed from client to server 
DateTime clientTimeAsJoda = new DateTime(clientTime).withZone(DateTimeZone.UTC); 
// (B) Does this convert clientTimeAsJoda to server time zone? 

回答

4

Unix的时间戳是独立的时区的;它们表示自特定时刻称为“时代”以来的秒数,即1970-01-01 00:00:00 UTC。 (你的价值实际上是毫秒数而不是秒,但这个想法是相同的。)所以不,你不需要担心客户的时区。

相关问题