nodejs和postgres中的日期转换

时间:2018-04-16 07:52:21

标签: node.js postgresql momentjs unix-timestamp utc

我在postgres中有date类型的列生日,我收到了来自前端的unixtimestamp,如716500800。当我将它保存到postgresql时,似乎它正在根据我的本地时区进行转换。我不明白我应该做什么,这是一个代码

const date = moment.utc(data.birthday * 1000).format();
console.log(date); // 1992-09-15T00:00:00Z it is right date

db.query(
  'UPDATE app_users SET birthday=$1 where id=$2 RETURNING birthday',
  [
    date,
    id
  ],
  (err, bd) => {
    console.log(bd.rows); // birthday: 1992-09-14T20:00:00.000Z
  }

1 个答案:

答案 0 :(得分:0)

所以我在服务器和db上设置时区为UTC。从前端我得到timezone和chande db字段到timestamptz(带时区)。现在,我使用UTC中的所有日期进行操作,并使用时区显示/获取客户端。