同事说:后台接口不能使用除 post/get 之外的方法,path 里不能带参数

2020-01-02 16:42:17 +08:00
 unco020511

我写了接口文档,尽量按照 RESTful 风格写的,然后前端+部分后台同事说不能用 put 和 delete,还有 path 里不能带参数; 我问为啥,他说这样不规范 我该如何说服同事?

获取对应学期下评语:[get] /back/remark/{termId} 删除数据:[delete] /back/record/{recordId}

22173 次点击
所在节点    Java
181 条回复
littlewing
2020-01-02 19:13:43 +08:00
没有谁对谁错,重要的是统一

就像我厂 golang 的 const 变量都是 大写+下划线,不符合 go 官方风格
finian
2020-01-02 19:14:20 +08:00
@wc951 #59 不用 RESTful 的就是 low ?那用 GraphQL 的怎么说
jss
2020-01-02 19:18:34 +08:00
杂牌军宗旨:能用就行
wc951
2020-01-02 19:28:37 +08:00
@finian 显然你是在曲解我的意思,low 的是认为达到 restful 成熟度第二级的 api 不规范,况且以该团队表现出的保守来看他们并不会使用更加激进的 graphql
tiedan
2020-01-02 19:34:28 +08:00
全用 post
alcarl
2020-01-02 20:13:29 +08:00
今年搞了 n 次安全检测的。。。,说句心里话你们同事说的不规范,不是代码层面的规范,是安全层面的。。。。。。。比如 tomcat 之类的容器默认是禁止 delete 这类 http 方法的,自己打开如果控制不当会导致安全问题。安全的规范和防护设备的监控规则也都是就紧不就松的,摊子铺大了什么都是遵循这个逻辑。这方面可以看看阿里的 java 开发手册。不要动不动上火,等发现自己不知道的太多,就不好意思这样杠了。。。。。厂子越大台面越高代码之外的东西越多
tedderchan
2020-01-02 20:19:18 +08:00
有什么, 我们全部用 post, get 就连 get 我们都很少用
别扯什么缓存规范,nobody cares
tedderchan
2020-01-02 20:20:49 +08:00
@jjshare 真心统一,最恶心资源还用 post delete put 之类的来区分,直接 api 名字加上不就行了吗 会死吗?
heart4lor
2020-01-02 20:29:10 +08:00
确定不是前端因为懒
NakeSnail
2020-01-02 20:43:42 +08:00
我通常直接要求只能 POST,不能其它,简单,水平高低都能说通
so1n
2020-01-02 20:54:54 +08:00
我想起我实习时就按标准写 REST url,结果 cdn 过不了……按照自己团队规范来就行了
Biebe
2020-01-02 21:37:36 +08:00
国内大厂与国外大厂是不是不是一种大厂
otakustay
2020-01-02 22:13:25 +08:00
一般都是后端框架太老了不支持,不行就不行呗没啥办法,就像前端也会和 UE 说动画一定要贝塞尔曲线的,别搞逐帧动画,类似的道理
ArtIsPatrick
2020-01-02 22:48:41 +08:00
@marcong95 咕...咕挼弗 QL?
Keyes
2020-01-02 22:55:04 +08:00
@marcong95 hhhhh 这不就是 jsonrpc 了
yafoo
2020-01-02 23:09:55 +08:00
get+post 挺好的
freestyle
2020-01-02 23:20:12 +08:00
这种说法有道理的,path 参数不仅对日志分析和性能监控不利,而且调用方每次拼 path 也是一种额外消耗,还要考虑转义和 get 参数长度限制.
gitjavascript
2020-01-02 23:22:29 +08:00
之前怎么玩的就怎么玩喽,多大点事
luozic
2020-01-02 23:25:14 +08:00
只要规范一致,按架构变化演进就行,如果是拿着十年前的不知道哪个废纸篓里面的黑魔法当独门绝技,你倒是要多注意是不是过时的垃圾坑。
HanMeiM
2020-01-02 23:26:19 +08:00
这东西也不只是只有 RESTful 一种规范

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

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

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

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

© 2021 V2EX