如何防止JSON.stringify()改变日期?

时间:2015-12-28 05:18:22

标签: mysql json date datetime stringify

我在SO上阅读了关于此的所有页面,但没有一个能够提供我需要的简单解决方案。

在MySQL数据库中,我有名为'start'的DATETIME字段。其中的一个示例记录是:

2015-12-28 06:20:00

当我从数据库中获取此数据时,结果对象中的日期与数据库中的相同,但是当我在结果对象上使用JSON.stringify方法时,它会将此日期保存为2015-12-28 05:20:00。

如何防止这种情况,我只想要与数据库中的日期相同,而不需要转换为本地时区?

编辑:

这就是我的SQL查询结果:

start: Mon Dec 28 2015 06:20:00 GMT+0100 (Central Europe Standard Time),

这是在调用JSON.stringify:

之后
"2015-12-28T05:20:00.000Z"

我的电脑是GMT + 0100。但我不希望任何时区信息都存储在JSON中,也不希望存储在MySQL数据库中。我从ISO 8601格式的外部API获取日期,但我不想存储时区信息。

1 个答案:

答案 0 :(得分:0)

var db_config = {
     host     : 'localhost',
     user     : 'xxx',
     password : '',
     database : 'xxx',
     timezone: 'utc'  //<-here this line was missing
};

那个时区变量解决了我的问题。我在这里找到了答案:NodeJS responded MySQL timezone is different when I fetch directly from MySQL