繁体   English   中英

发送到前端后,mysql列中的日期已更改

[英]Date from mysql column changed after sending to front-end

我有一个预订表。 当我选择用户SELECT * FROM booking WHERE guestId='3';一些预订时, SELECT * FROM booking WHERE guestId='3'; 我有:

+-----------+------------+------------+--------+---------+
| bookingId | startDate  | endDate    | roomId | guestId |
+-----------+------------+------------+--------+---------+
|         3 | 2016-04-10 | 2016-04-22 |      2 |       3 |
+-----------+------------+------------+--------+---------+

之后,我将数据发送到前端:

function getGuestHistory(id, res){
  dbHandler.query(`SELECT * FROM booking WHERE guestId='${id}';`, function(err, rows) {
    res.end(JSON.stringify(!err ? rows : `error: ${err}`));
  });
}

现在在前端,当我打印console.log(res)我的响应是不同的:

[Object]
0: Object
bookingId: 3
endDate: "2016-04-21T21:00:00.000Z"
guestId: 3
roomId: 2
startDate: "2016-04-09T21:00:00.000Z"

看起来, startDateendDate已更改。 例如,DB 2016-04-10 startDate现在是2016-04-09 为什么更改日期,我该如何解决?

检查数据库和服务器上的时区设置。 这些可能不匹配。

服务器将数据从数据库中存储的数据转换为服务器识别为自己的时区的数据。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM