比较服务器上特定时区的日期

时间:2019-05-13 10:05:42

标签: javascript node.js mongodb date

在服务器上,我需要确定两个时间点是否在同一天(相对于客户当地时间)。

服务器上的日期保存在UTC中:

日期A:2019-10-24T22:00:00.000Z

日期B:2019-10-25T17:00:00.000Z

在我的本地时区(+2:00),这两个日期是同一天,但是如果我在服务器上比较它们,则不是。

我是否必须在服务器上获取客户端时区以比较日期,或者是否有另一种模式可以解决此问题?

如何与客户所在的时区创建一个日期进行比较?

2 个答案:

答案 0 :(得分:0)

如果您将 UTCDATE 保存在服务器上,则以下代码将为您提供帮助,因为您只需按分钟传递当前的时区偏移,如下所示

DECLARE @Offset as int = 300    
SELECT DATEADD(MINUTE, CONVERT(int,@Offset), GETUTCDATE())

答案 1 :(得分:-1)

您可以使用momentjs时区来解决此问题 https://momentjs.com/timezone/ 在进行任何计算之前,您可以在其中将服务器时间转换为您的时区。

最好的方法是将时间戳记保存在服务器中,该时间间隔是经过纪元后的毫秒数,这样您就始终在同一页面上