你会这样返回API结果吗?

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

新手:

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

老司机:

{
    "code": 0,
    "msg": "ok",
    "data": {
        "list": [
            {"name": "jack"},
            {"name": "join"}
        ]
    }
}
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 26
aab

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

1年前 评论

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

1年前 评论

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

1年前 评论

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

1年前 评论

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

1年前 评论

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

1年前 评论

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

1年前 评论

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

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

1年前 评论

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

1年前 评论

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

1年前 评论

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

1年前 评论

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

1年前 评论
PHP-Coder 1年前

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

1年前 评论
6324红老嗨 1年前

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

1年前 评论
DonnyLiu

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

1年前 评论

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

1年前 评论

file

一直都是第一种

1年前 评论

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

1年前 评论

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

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

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

1年前 评论

加字段会很恶心第一种

1年前 评论

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