go中实体用uint,在64位操作系统中默认为64位,数据库存储数据和查询取得的数据都没有问题

在返回到swagger时,后两位将自动向下取整导致id和数据库不一致,这种情况在json tag指定类型为string,即 ` json:"id,string" `
另一种丢失精度问题进行验证,并非json转化问题,而是swagger数据转化问题

Go中uint与Swagger数据转换问题解析
在Go语言中,实体类型为uint在64位系统默认为64位,与数据库交互无误。然而,当数据通过Swagger返回时,uint类型的数值后两位会自动向下取整,导致ID与数据库不一致。这不是JSON转换问题,而是Swagger自身数据转换的问题。解决方案是在jsontag中指定id类型为string,避免精度损失。
go中实体用uint,在64位操作系统中默认为64位,数据库存储数据和查询取得的数据都没有问题

在返回到swagger时,后两位将自动向下取整导致id和数据库不一致,这种情况在json tag指定类型为string,即 ` json:"id,string" `
另一种丢失精度问题进行验证,并非json转化问题,而是swagger数据转化问题

1194
9383
3689
3011
3590

被折叠的 条评论
为什么被折叠?