关于时区处理策略

2023-12-21 17:34:40
  • 前端会通过 `App-Id` 请求头附带 客户端时区 信息

  • 前端传入的如果是 字符串,会自动根据 请求的客户端时区 解析为对应的 日期

  • 如果前端传入的是时间戳,则无需额外解析转换

  • 如果是 商户后台、管理后台 都统一基于 商户所在国家的时区(总台目前就统一是 GMT+8 ),而【不会】根据前端请求去客户端时区去转换和显示。

  • 如果想基于系统默认时区解析时间参数,则需要自定义 setter,例如:

  • 如果是 开始时间 和 结束时间 的范围查询,系统会基于 客户端时区(前台) 或 商户所在时区(后台) 进行转换处理。如果前端传入的是已经转换好的时间戳,后端就不会再进行转换处理。

应用

  • 期望入参基于系统时区 ( 比如 出生日期、账单查询时间范围 ):

  1. 前端传入字符串,需要自定义 setter 处理

  2. 前端传入时间戳 ( 这种情况一般不存在,可以提前和前端约定好,否则需要通过 q.getTimeZone() 来转换 )

  • 期望入参基于 用户 或 商户所在时区

  1. 前端传入时间戳,前端已经处理好,后端无需二次处理

  2. 前端传入 字符串,系统自动根据 用户或商户所在时区 进行转换处理。

文章来源:https://blog.csdn.net/weixin_38652136/article/details/135133023
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。