前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >聊聊API接口那些事

聊聊API接口那些事

作者头像
大话swift
发布2020-03-26 16:55:26
3570
发布2020-03-26 16:55:26
举报
文章被收录于专栏:大话swift大话swift
今天不写代码了,外卖下着雨,和大家唠唠API接口开发中哪些撕逼的事情

1、数据格式

协商的结果

后端:这个格式怎么样(后端抛出了一个数据格式)

代码语言:javascript
复制
1.{ 
2."code": 0,
3."msg": "success", 
4."data": {} 
5.}

web前端:可以

Android:可以

IOS:可以

开发阶段

Android开发:老铁,你这个格式有问题啊!

代码语言:javascript
复制
1.{
2."code": 0,
3."msg": "success",
4."data": [{
5."id": 1,
6."username": "hanyun"
7.}, {
8."id": 1,
9."username": "hanyun"
10.}]
11.}

后端:怎么了

Android开发:我们当初商量的格式是这样的(说着抛数据格式)

代码语言:javascript
复制
1.{
2."code": 0,
3."msg": "success",
4."data": {}
5.} 

后端:没有错啊,是三个字段啊!code、msg、data,怎么了?

Android开发:你再看看

后端:(很认真的看了看,一脸真诚的说),嗯啊,没哟错啊

Android开发:我们当初协商的时候data是个map,你现在给我返回一个list

后端:这样啊!一条数据的时候data就是map,多条的时候data就是list

android开发:那你多条数据的时候在data里放个键值对,值是list

后端:好的

(一分钟之后)

ios开发:怎么蹦了(他的内心是这样的)

web前端:控制天怎么标红了(他的内心是这样的)

ios、web前端:哥们,这个数据格式怎么变了

后端:行我给你们改回来

(一分钟之后)

Android开发:数据格式怎么又变回来了(他的内心是这样的)

后端:你们三个自己协商,商量个结果告诉我,少数服从多数

最终结果:以ios和web前端为准

Android开发:。。。(默默的改着代码逻辑,内心@了后台开发无数次)

最终协商的结果:

代码语言:javascript
复制
1.{
2."code": 0,
3."msg": "success",
4."data": {}
5.}
  • code表示状态码
  • msg表示提示
  • data是泛型,单条是map,多条是list

2、命名规范

后端:我数据库里的字段是蛇形的,为了性能,查出来直接给你们就好了

iso、Android:不行(异口同声),蛇形的太难看

web前端:我这边都可以(内心是)
web前端:我这边都可以(内心是)

后端:。。。。你们说怎么办我就怎么办,你们协商就好了(尼玛,反正到时候接口慢还是老子的事情,你们这帮孙子又不管)

(最终Android力挽狂澜接口采用驼峰命名法)
(最终Android力挽狂澜接口采用驼峰命名法)
(正在写接口的后端)
(正在写接口的后端)

3、数据重用

web前端:哥们你这个接口有问题(说着抛来了数据格式)

代码语言:javascript
复制
1.{
2."code": 0,
3."msg": "success",
4."data": [{
5."id": 1,
6."userName": "hanyun"
7.}, {
8."id": 1,
9."userName": "hanyun"
10.}]
11.}

后端:怎么了(一脸无辜,这个接口我测过了)

web前端:这个是你上个接口的数据格式,你再看看(一脸认真的样子)

代码语言:javascript
复制
1.{
2."code": 0,
3."msg": "success",
4."data": [{
5."id": 1,
6."username": "hanyun"
7.}, {
8."id": 1,
9."username": "hanyun"
10.}]
11.}

后端:。。。

web前端:我这两个接口的数据要重用,你这个username和userName不一样,我没法重用

后盾:我单个接口的格式只要格式一直就好了

web前端:你改一下呗

后端:行吧

(一分钟之后)

ios、Android开发:怎么蹦了(后端真TMD的不靠谱)

后端:。。。

ios、Android开发:赶紧改回去

web前端:不行

后端:。。。(你们不是有MVVM么,我返回的数据就是model层,你们自己格式化不就好了。天天听你们吹牛逼,就知道撕逼,就知道难为我)

(最终结果,Android和ios力挽狂澜,接口改了回去)

老板:不行,这个前后端分离,不利于搜索引擎收录,改回去

web前端:现在有服务端渲染,我试一下

(一周后)

老板:上线了么

后端:没有呢

老板:怎么搞的

web前端:服务器端渲染没搞定

老板:那改回去

后端:嗯(内心一万只羊驼奔腾而过)

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-03-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 大话swift 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、数据格式
    • 协商的结果
      • 开发阶段
      • 2、命名规范
      • 3、数据重用
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档