V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
red13
V2EX  ›  程序员

你们在设计 restful api 时会用 put 和 delete 吗?

  •  
  •   red13 · 2025 年 8 月 15 日 · 10706 次点击
    这是一个创建于 164 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我一直用 get 和 post ,完全可以满足需求,我不知道是否有业务场景是使用 put 和 delete 会带来好处的,我能想到的就是可以一眼看出接口的作用是什么。使用 put 和 delete 在功能性、安全性、性能上能带来好处吗?

    120 条回复    2025-08-16 13:03:09 +08:00
    1  2  
    luziafy
        101
    luziafy  
       2025 年 8 月 15 日
    我用了,前端让我改成 post ,我说好的
    yibin001
        102
    yibin001  
       2025 年 8 月 15 日
    POST 一把梭哈
    edisonwong
        103
    edisonwong  
       2025 年 8 月 15 日
    用,好用,监控指标按里 url+method 来查

    个人不建议参数放在 url 里,例如 /:id/info ,会导致 nginx rewrite 很 sb + 监控指标爆炸 + 路由短路
    notfornothing
        104
    notfornothing  
       2025 年 8 月 15 日
    Delete 遇到过的问题:
    查询列表复选框删除多条记录,调用接口,路径会拼接多个入参 id ,放在路径会超长。会导致调用失败
    dajj
        105
    dajj  
       2025 年 8 月 15 日
    @dfkjgklfdjg GET 方便手动浏览器查看, 就这个有点
    unco020511
        106
    unco020511  
       2025 年 8 月 15 日
    我是都用的
    streamrx
        107
    streamrx  
       2025 年 8 月 15 日 via iPhone
    公司要求什么用什么。自己写的话连 get 都不需要 全部用 post 就行了
    adgfr32
        108
    adgfr32  
       2025 年 8 月 15 日 via Android
    @momo2789 restful 也支持 post + action 这种组合,算是对一些短板的补充。
    dranfree
        109
    dranfree  
       2025 年 8 月 15 日 via Android
    很多传统公司政企部门都是直接禁用 GET POST 以外的方法…
    Eliefly
        110
    Eliefly  
       2025 年 8 月 15 日
    我个人觉得区分是有用的,但是公司要求 post 一把梭,get 都很少用。
    boboaiya3
        111
    boboaiya3  
       2025 年 8 月 15 日
    @momo2789 restful 是一种设计思想,你让你在业务出发去思考业务设计层面通用抽象性,而不是纠结 http get post put 。本末倒置了属于
    simenet
        112
    simenet  
       2025 年 8 月 15 日
    真正的大神 都是 post
    strobber16
        113
    strobber16  
       2025 年 8 月 15 日
    想起我在上上家的时候,在外包场地,边上是个绿盟的实习生。他扫描就是拿别人做好的工具脚本,跑一遍就生成 doc 文档,然后再根据客户要求手动改一下
    SpontaLeo
        115
    SpontaLeo  
       2025 年 8 月 15 日
    get post 一把梭吧
    MuscleOf2016
        116
    MuscleOf2016  
       2025 年 8 月 15 日
    直接 get post ,因为有时候适配对接一些老的项目,人家不支持 put ,还要专门去适配。最近项目就是这样。
    DeWjjj
        117
    DeWjjj  
    PRO
       2025 年 8 月 15 日
    如果不用的话可能就不是 restful 风格了。
    1wlinesperday
        118
    1wlinesperday  
       2025 年 8 月 16 日
    不分了 早该上 graphql 了
    Bidirectional
        119
    Bidirectional  
       2025 年 8 月 16 日
    get 和 post 就行了,最重要是能让团队所有成员看着顺眼,一眼就能知道这个接口干啥的。至于接口命名风格,只有两点。第一规则要足够简单,一两分钟就能讲明白那种;风格要统一,以便于大家交流,也便于大家按照一个规则快速查找到想要的接口。
    hezhiming1993
        120
    hezhiming1993  
       2025 年 8 月 16 日
    @seedhk 我们这边连 GET 都不用, url 做好语义就行了
    1  2  
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   1057 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 18:43 · PVG 02:43 · LAX 10:43 · JFK 13:43
    ♥ Do have faith in what you're doing.