因此,假设用户在与应用程序服务器不同的时区从他的浏览器运行我的 Web 应用程序。date.getTime()
我使用 JavaScript 的方法在客户端序列化日期。我通过 Json 发送生成的毫秒数,然后通过调用在服务器端创建一个 Java Date 对象new Date(millisecondsFromJS)
。我将它存储在 MySql 上,检索它,通过调用 Java 再次对其进行序列化,date.getTime()
并通过 Json 再次将其发送给客户端。
如果我用这些毫秒创建一个 JavaScript Date 对象,它会产生原始日期吗?我已经成功完成了这个过程,但是客户端和服务器目前在同一个时区。如果时区不同,我不确定日期是否会在此过程中损坏。
据我了解,使用 getTime() 返回一个与时区无关的瞬间。例如,如果用户捕获 2012 年 7 月 17 日下午 4:39 CDT,服务器可能会将其存储为 2012 年 7 月 17 日晚上 11:39 CEST,但是一旦服务器将其转换为自 GMT 以来的毫秒数并且客户端创建一个从这些毫秒开始,它将成功地重建原始的 2012 年 7 月 17 日 CDT 下午 4:39。这是真的?