全局格式化时间
全局格式化时间
1 遇到的问题
前台接收到的接口数据 时间不是常用的格式, 原因是序列化使用的 RFC3339 格式
输出来的字符串不是 2020-04-27 19:08:35
2 希望的结果
发到前台的数据,输出就是 2020-04-27 19:09:17
的时间格式
3 尝试过的办法
type jsonTime time.Time
//实现它的json序列化方法
func (this jsonTime) MarshalJSON() ([]byte, error) {
var stamp = fmt.Sprintf("\"%s\"", time.Time(this).Format("2006-01-02 15:04:05"))
return []byte(stamp), nil
}
结构体中的时间都定义为 jsonTime 格式
就可以了, 但是有没有更简单的方法, 不修改结构体呢??
type下类型重新定义下序列化方法,另外格式化时间应该是前端显示处理的new Data.Format()就好了,具体格式由前端决定。
play.golang.org/p/9tOAw0zs6d6