2023-07-28 后端接口返回的数据与postman返回的数据不一致 ==》前端不兼容数据库字段类型

发布时间 2023-07-28 09:52:30作者: 哎呦你可棒棒了

前言:在传参一致,接口一致的情况下,微信开发者工具调的接口和postman返回的数据的id不一致。

具体为:

微信开发者工具端调接口拿到的id为22位的数据:1884661033952220199

看起来平平无奇对吧,而postman返回的id则为: 1884661033952220200

是的,接口一样,传参一样,返回的其它数据也一样,唯独这个id的值不一致。

原因:返回的id类型为长整型,该数据类型在某些平台会出错,就比如你打开谷歌浏览器或者微信开发者工具的控制台输入1884661033952220199,他会给你截断,向上取整为200,而不止是199,

如果是1884661033952220201,他也会给你截断为200结尾,准确来讲是超过了16位数字,就会被截断

长整型的二进制位长是32,长整型的是16位。这就是导致前端返回的数据不一致的问题所在。

解决方案:既然前端不兼容这个长整型,那么就让后端把这个id改为string类型即可。