前后端 api 接口 url 格式问题讨论

244 天前
 pandazhong123

公司的前后端 api 接口统一用 post,对于添加删除用户,是用 /user/add /user/delete 比较好,还是用 /add/user /delete/user 比较好?

4141 次点击
所在节点    程序员
82 条回复
bojackhorseman
244 天前
我倾向于前者,虽然我是前端,不关心后端怎么设计接口。
hervey0424
244 天前
我觉得/user/add 比较好, 或者 user_add
pandazhong123
244 天前
/add/user 这种阅读起来不是更自然吗?
@bojackhorseman
233373
244 天前
参考下 JSON-RPC 的格式吧,把行为放在 URL 里面确实不太好
shakukansp
244 天前
@pandazhong123 /add/user 会被人觉得你所有乱七八糟的 add 都往这下面塞
/user/add 说明就是 user 的增删改查
IvanLi127
244 天前
前者。
或者你想要 add user 的顺序,路径可以叫 /add-user
libook
244 天前
都可以,估计要把所有接口都列出来,然后才能知道用哪种方式组织开发起来更方便。

现在很多是倾向于微服务和 REST 风格设计,所以以资源为主体,其次是围绕资源的各种操作,所以倾向于前者。

但不同项目的情况可能有很大差异的,没有一种适用所有情况的方案。
lopda
244 天前
主区分模块(谁
谓区分行为(做什么

所以我也倾向于 user/add 这种
lopda
244 天前
@lopda 对于前端来说,api 请求分模块文件的时候也更清晰点。
pandazhong123
244 天前
OK ,看来大家都是主张用/user/add 这种格式,我们也采用这种格式了,谢谢大家。
xiangyuecn
244 天前
/user/addUser
/user/deleteUser
pandazhong123
244 天前
@xiangyuecn 这种格式看起来有点冗余了。
xiangyuecn
244 天前
@pandazhong123 等你调试的时候看浏览器控制台 Network 面板,就会知道这种越完整的越有多香了😅
nothingistrue
244 天前
RESTful 风格添加:POST /user ,删除 DELETE /user 或者 DELETE /user/{id}。
nothingistrue
244 天前
两个都不对。/user/add 是画蛇添足。/add/user 是分组错误。

RESTful 风格
添加:POST /user 。删除 DELETE /user 或者 DELETE /user/{id}。如果是一般动作,那就是 POST /user/{id}/%动词%
,比如 POST /user/{id}/disable 。
仅 POST 风格
添加:/addUser ,或者/user/addUser 。删除:/deleteUser ,或者/user/deleteUser 。对于后面那个,/user 只是用来分组的,不参与接口命名。
chendy
244 天前
方法全部 post ,url 格式是 名词 / 动词,动词不限于增删改查,名词放前面是因为名词的区分度更高
rest 是死的,人是活的,硬 rest 得不偿失,命名规范统一易于理解就好
flyqie
244 天前
/add/user /delete/user

这都是什么邪门路径。。

你这么玩的话,后续路由分组这块怎么做?
caocong
244 天前
全 post
/user/addUser
/user/deleteUser
+1
flyqie
244 天前
@flyqie #17

倾向/user/add /user/delete 这种方式
HAYWAEL
244 天前
肯定是 /user/add /user/delete 不然 你之后后端代码怎么组织,面向对象

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

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

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

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

© 2021 V2EX