请问下各位 V 友,你们公司前端参与 API 接口定义么?

2023-07-14 14:51:04 +08:00
 SilentRhythm
我司之前版本的 api 创建和修改,都是由后端定义的。这次技术 leader 突然来个后端只定义 url ,前端去补充入参出参,遇到了很多问题,诸如此类:

1 前后端对单词的理解不一致,如员工可用 companyUser/staff/employee 都行,并不能说谁错谁对
2 命名习惯如驼峰规范
3 后端返回包装类/分页固定包装类
4 后端基础字段如 createTime updateTime 等
5 后端 java ,前端 js 对类型不敏感,定义的都是 string 类型
6 POST 使用 query 参数类型


leader 的回应:执意前端参与接口定义并让我出术语表,并表示一回生两回熟,下次就不会犯错了。

我在想 如果我术语表都出来了,我不是接口都定义好了么。
就我个人而言,如果时间允许,我当然非常支持并热衷于这种有利于团队学习提高能力的工作内容。
但是据我了解当前版本的开发时间并不充裕,如果还要与前端扯皮字段命名,出术语表,到时加班的还是自己。
2915 次点击
所在节点    程序员
35 条回复
IvanLi127
2023-07-14 17:38:42 +08:00
看你们项目的定位是啥了,web 后端的话,那肯定不能没有前端参与,除非做的是管理后台

重前端的话,全部前端定也是有的,定 API 这事肯定是跨在两头的人做,如果没这个人,那么要么变成这个人,要么两头的人一起定,一方定的话,另一方怕是要加班哦
dcdlove
2023-07-14 17:39:48 +08:00
@cnoder 我们公司是故意制造沟通成本,一个接口写完乱七八糟不说,不参照页面来写,就说好了,对接时候发现少字段,他们在去加,又等着,然后加了又各种报错,然后又等,反反复复 4-5 次,期间还要让测试参与,一个 10 分钟对接任务活生生弄一天
lasuar
2023-07-14 17:44:35 +08:00
是很简单的 API 也可以,但总体来说,API 字段定义也涉及到具体实现逻辑,这必然是后端才了解的,交给前端定义不是合理的。
pixiaotiao
2023-07-14 17:55:37 +08:00
现代 js 类型还是有影响的
openliucongbx
2023-07-14 17:55:41 +08:00
不都是谁定都可以吗,大家配合下就行
做开发的还内斗的那么厉害吗
han3sui
2023-07-14 18:46:10 +08:00
前端一般只对部分接口返回结构有要求
AyaseEri
2023-07-15 00:25:34 +08:00
领导要求参与,但我一般懒得定,我实在懒得去纠结与争论应该用什么词。我只会说我需要什么信息。
感觉后端对接口命名、字段命名、文件夹命名更加在意?前端一般是 Model 派生出多个 ViewModel 后容易导致词不够用。
你怕是没碰到过领导要求前端评审后端 SQL 的,我一臭切图的哪敢吭声。
zoharSoul
2023-07-15 00:55:10 +08:00
羡慕啊
一直想让前端出
lanlanye
2023-07-15 01:21:18 +08:00
REST 一把梭,感觉你们的问题在于缺乏标准,与其自己订一套,不如直接找个现成的,比如 Google Cloud API Design.
realpg
2023-07-15 09:15:37 +08:00
俩前端干起来咋办
dengshen
2023-07-15 09:22:00 +08:00
已经无所谓啦。只求 tm 文档能写清楚一点。写的跟实际用的都对不上。什么勾八玩意
cdswyda
2023-07-15 12:49:09 +08:00
开放 api 的话,按业务来,基本是要多部门评审的。
页面的接口的话,全部前端定啊,因为这样定好接口出来直接就能用,省 n 多事情。
1 、2 、3 是规范层面的事情,不管谁定,公司应该要有标准,比如什么格式,怎么用。
“4 后端基础字段如 createTime updateTime 等。 ” 这个完全不赞同,不管底层数据库怎么加,没有使用需求的话,接口没必要把这类信息暴露出来。
“5 后端 java ,前端 js 对类型不敏感,定义的都是 string 类型”。 既然是给前端用的接口了,输出不都是 json 嘛, 能用的也就字符串、数字和布尔值了。 如果数字和布尔都没出现过,那确实有有问题。
6 同 1 、2 、3 公司规范层面的事情,和接口自动定义关系不大
weilanwl
2023-07-15 14:37:03 +08:00
我是前端,一般不参与。但是我主导的模块,我就会直接用 apifox 之类的工具先写好接口再给后端。
dcdlove
2023-07-18 10:40:23 +08:00
@weilanwl 不管时 swagger 文档还是 apifox 文档 所有接口以及状态定义类型定义 说明描述用例模拟 都写得非常详情,人家就是不按文档来写接口,但是口头都答应挺好,
weilanwl
2023-07-18 14:08:45 +08:00
@dcdlove 后端也有后端的习惯和框架,冲突几次后,多沟通达成共识就好了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/956765

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX