今天发生一个离谱的问题
我是个前端开发,有一个列表接口,本来有数据,后面突然列表没了,前端逻辑没动过
我看了看接口,发现接口正常,里面列表数据都在,在控制台打印数据也都正常
最后打印列表字段 rows
发现是 undefined
,这才发现列表数据的 key 变成了 data
后端反馈是有两种数据结构,一种是有分页一种是无分页
有分页的接口返回 rows
,无分页的接口返回 data
后面甚至提出前端在响应拦截器判断一下,有 rows
的话拿 rows
,没有的话拿 data
我觉得很离谱,在我的认知中,我认为后端返回的数据要保持一致性
类似这样
interface ResponseData {
code: number
data: Array | Object // 这里就大概表示一下可以是列表数组可以是对象
total?: number // 需要的话返回
message: string
}
争论半天后端大概意思是:“一般都是这样的,分页和其他查询结果有差异”、“没有必要改 不然看不出来 分页和部分也的区别了”、“你现在没数据了你能第一时间知道是接口改成不分页的了”、“这个框架都几十年了一直都是这样” ...
最后虽然也改成统一的了
但我我对这套说辞是:???
想请教一下大家,你们对接的数据结构也是不统一的吗?哪种方式更好呢?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.