json同一字段多类型
- 问题:在json中同一个字段大部分为int,少量为string类型
- 解决方案:结构体添加json tag
type Product struct {
Name string `json:"name"`
ProductID int64 `json:"product_id,omitempty"`
Number int `json:"number,string"`
Price float64 `json:"price,string"`
IsOnSale bool `json:"is_on_sale,string"`
}
- 参考:https://blog.csdn.net/qq_33679504/article/details/100533703
json反序列为时间
- 问题:
近期在开发中,发现json中的时间类型"2022-05-19 16:09:51"通过json.Unmarshal反序列化转换为time.Time时报错
- 解决方案:
golang使用json自定义time类型,然后自己实现json的MarshalJSON和UnmarshalJSON方法,代码如下
package main
import (
"encoding/json"
"fmt"
"time"
)
func main() {