你会这样返回API结果吗?

只有经历过的老司机才明白的痛,仔细琢磨为什么。

新手:

{
    "code": 0,
    "msg": "ok",
    "data": [
        {"name": "jack"},
        {"name": "join"}
    ]
}

老司机:

{
    "code": 0,
    "msg": "ok",
    "data": {
        "list": [
            {"name": "jack"},
            {"name": "join"}
        ]
    }
}
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 29

加字段会很恶心第一种

6个月前 评论

知道,前端、UI、老板、产品加需求,需要加字段

6个月前 评论

是为了后期数据格式变化,新旧版本替换等。方便维护。

"data": {
    "list": [
        {"name": "jack"},
        {"name": "join"}
    ],
   "count":1,
  "page": 2,
   .....
}
6个月前 评论

还要加上 spatie/laravel-json-api-paginate,好分页

6个月前 评论

file

一直都是第一种

6个月前 评论

列表应该加上分页信息吧? 明显也是 新手 :see_no_evil:

6个月前 评论

一直用的第二种,方便增加分页信息,前端也好理解

6个月前 评论
aab

不要被局限住,可以添加一个 meta

6个月前 评论

看到这么多被坑过的老司机我就放心了

6个月前 评论

很明显第二种才是合理的、正确的。 第一种 data 结构是 list,但后端肯定不可能一直返回 list 的,当要返回 map 集合时,data 的类型就变了,很容易导致强类型语言(比如安卓)的崩溃。

6个月前 评论
6324红老嗨 6个月前

数据也不一定全放data里面啊.

6个月前 评论

没必要,啥新手老手的,视情况而定,前端需要啥样我就给啥样,接口结构而已大差不差,没必要纠结

6个月前 评论

还不知道后面谁接手,坑留给下一任

6个月前 评论
PHP-Coder 6个月前

其实这两种都可以,但小程序线上的前端代码是多个版本共存的,想追加额外的数据,第一种格式就没办法了,只能另写接口

6个月前 评论

做过安卓对接就知道为啥了

6个月前 评论

肯定第二种 第一种接口加字段的时候就gg了 前端又要跟着改

6个月前 评论

这两种我都用,当需要返回列表信息时,我用的是第二种

6个月前 评论

一直,以及永远都会用第一种。

加字段?加字段就增加嵌套啊,,,这有什么问题吗

6个月前 评论

体育老师说:data 请永远返回对象,不要返回数组。

6个月前 评论

我觉得都没啥问题,前端需要怎样的就给怎样的。除非是对外公共API,就要考虑兼容性和升级空间了

6个月前 评论

没看明白,是list还是那个花括号

6个月前 评论

data 结构不统一,安卓对接很恼火

6个月前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!