前端和Postman调用同一个接口,拿到的数据不一样

1、表现

联调一个List接口,Postman自测得到的ID和前端调用得到的ID,结果不一样。前者结果:

后者结果:

同一份代码、同一个数据库,出现这种错误,大概率是类型转换时出问题了,但检查代码发现,后端并未涉及类型转换。

2、原因

前端浏览器会有数字溢出

3、解决

定义Vo类时,指定:将结构体对象序列化成json字符串时,将该字段的值转为字符串类型输出。

go 复制代码
type Example struct {
    ID uint64 `json:"id,string"`
}

// 示例
e := Example{ID: 123}

以上,序列化e对象,json串为:

go 复制代码
 {"id":"123"}

反之:序列化时,还是保持int型输出

go 复制代码
type Example struct {
    ID uint64 `json:"id"`
}

// 示例
e := Example{ID: 123}
// 序列化为 JSON: {"id":123}
相关推荐
懒得不想起名字5 分钟前
flutter 使用go_router 和 page_transition定义页面动画
前端
多加点辣也没关系13 分钟前
JavaScript|第6章:流程控制语句
开发语言·前端·javascript
csj5013 分钟前
前端基础之《React(11)—state声明式》
前端·react.js
程序员晓琪14 分钟前
深入解析:从 Webpack 到 Vite,多入口多端项目的工程化迁移实战
前端·webpack·vite
涛涛ing15 分钟前
Vue 3.6 还没正式发布,但前端的方向已经被它定下来了
前端
阿新聊ai18 分钟前
Claude Code 为什么总不懂你的项目?缺一张「项目地图」
前端·后端·面试
暗冰ཏོ27 分钟前
Spring Boot + Vue3 订单支付模块技术实现:支付单、回调验签、幂等处理与余额扣减
前端·spring boot·后端·vue·微信支付·支付宝支付
Csvn29 分钟前
AbortController 不止能取消 Fetch!3 个你不知道的隐藏用法
前端·javascript
爷_36 分钟前
AI Coding Agent 沙箱的设计原理解析
前端·人工智能·后端
爱勇宝38 分钟前
第 3 章:别把团队设计成一场内卷竞赛
前端·后端·程序员