后端的id采用长整型来存储,传到后端后出现精度丢失,前端只能存储16位的整型,后面的都变成了0,浏览器打开开发者工具,response里面的id是正确,js和response为什么不一样呢?
后端的id采用长整型来存储,传到后端后出现精度丢失,前端只能存储16位的整型,后面的都变成了0,浏览器打开开发者工具,response里面的id是正确,js和response为什么不一样呢?
前端解决
在浏览器环境中,使用json-bigint库替换默认的JSON库,保证大整数不丢失精度。
https://blog.csdn.net/xhdxhdx...
后端解决
在Spring Boot应用中,使用Jackson进行JSON序列化的时候将Long类型ID转成String响应给前端。
https://cloud.tencent.com/dev...
10 回答11.3k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
叫后端格式化成字符串类型再跟前端通信,这样是最便捷的方案,也就是 1234567890987654321 ➡️ "1234567890987654321"。
比如你看思否就是这样做的:
P.S. 开发者工具又不是 JS 写的……