strongloop的timezone问题

本文介绍如何在LoopBack框架中正确配置日期格式化,包括调整数据库连接设置以使用字符串形式处理日期、修改核心库代码以避免UTC格式化,以及自定义access-token验证中的日期处理方式。

 "timezone": "UTC+0800"  这是正确的配置.但是要生效还是要修改不少类库代码.而且返回的日期类型还是0000-00-00T00:00:00Z这种.前端转化日期仍然不对.所以换了一个方式来修改.


1.配置数据库

loopback-connector-mysql库中找到mysql.js,配置数据库时加入代码dateStrings: true

options = {
      host: s.host || s.hostname || 'localhost',
      port: s.port || 3306,
      user: s.username || s.user,
      password: s.password,
      timezone: s.timezone,
      socketPath: s.socketPath,
      charset: s.collation.toUpperCase(), // Correct by docs despite seeming odd.
      supportBigNumbers: s.supportBigNumbers,
      connectionLimit: s.connectionLimit,
      dateStrings: true
    };


2.修改直接返回日期,不做UTC格式化

仍然是mysql.js,toColumnValue和fromColumnValue方法中日期格式直接返回


3.修改loopback的access-token日期格式验证

loopback库中,access-token.js修改validate方法,转换返回的字符串格式化成日期



评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值