V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
JasonLaw
V2EX  ›  程序员

关于 RESTful API 的疑问

  •  
  •   JasonLaw · 2022-03-22 12:34:30 +08:00 · 2177 次点击
    这是一个创建于 978 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我正在设计一个“获取系统是否维护中”的 API ,现在的设计为:

    GET /config/SYSTEM_MAINTAINING/value
    

    SYSTEM_MAINTAINING 是 config key 的名称,但是前端却觉得 URL 上不应该存在这样风格的命名,应该为 systemMaintaining 才对。想看看大家的意见。

    第 1 条附言  ·  2022-03-22 13:43:49 +08:00
    不讨论了🤐 没有答案的
    CEBBCAT
        1
    CEBBCAT  
       2022-03-22 12:44:08 +08:00 via iPhone
    多加两个 key ,把他搞到晕头转向,这时候就可以说,内部变量太多,不适合逐一映射,还是原样传递符合情况
    Vitta
        2
    Vitta  
       2022-03-22 12:50:24 +08:00
    这也不好看啊,怎么好看怎么来吧, 你们中和一下,用 system_maintaining 吧
    HYisen
        3
    HYisen  
       2022-03-22 12:52:39 +08:00 via Android
    前端传统 case insensitive ,应该是 system-maintaining 才对。
    pennai
        4
    pennai  
       2022-03-22 12:53:48 +08:00
    restful 风格 url 应该是全小写+下划线吧,哪有用 camel case 的
    hakr
        5
    hakr  
       2022-03-22 13:10:31 +08:00
    占位符而已 无所谓吧 只要在那个位置就行
    wunonglin
        6
    wunonglin  
       2022-03-22 13:15:02 +08:00
    url 统一用小写+下划线,能解决 99%的问题
    adeng
        7
    adeng  
       2022-03-22 13:20:25 +08:00
    有两年了记不清了什么情况,我碰到过 url 用驼峰命名的问题,不应该区分大小写
    Rache1
        8
    Rache1  
       2022-03-22 13:37:38 +08:00
    额,为啥不直接这样呢。

    GET /config?key=system_maintaining

    key 或者 field
    iseki
        9
    iseki  
       2022-03-22 13:42:36 +08:00
    URL 里大小写敏感太不友好了,不妨 system-maintaining 或者 system_maintaining 更好
    thinkershare
        10
    thinkershare  
       2022-03-22 13:43:25 +08:00
    我们的设计原则是: 全部小写, 然后使用-分隔, 不需要 value 参数, GET /config/system-maintaining, 很多国际互联网企业的 API 也是这个规范, 另外并不是所有的 API 都适合 RESTful Style, 使用动词风格也没啥大的缺陷
    jiangxiaoshui
        11
    jiangxiaoshui  
       2022-03-22 14:54:48 +08:00
    system-maintaining
    dubstep
        12
    dubstep  
       2022-03-22 14:57:12 +08:00
    elboble
        13
    elboble  
       2022-03-22 15:03:03 +08:00
    url 大小写不区分,所以驼峰没用,其他自便
    wu67
        14
    wu67  
       2022-03-22 15:13:42 +08:00
    /system/maintain/getStatus
    icy37785
        15
    icy37785  
       2022-03-22 15:14:14 +08:00 via iPhone   ❤️ 2
    我点开帖子看楼主的附言“不讨论了,没有答案的”以为底下吵起来了
    我寻思小写加下划线不就完了,有啥好吵的
    然后看到底下非常和谐都跟我想法一样,不禁陷入了沉思
    楼主说的没有答案是指的啥…
    JasonLaw
        16
    JasonLaw  
    OP
       2022-03-22 15:48:54 +08:00
    @icy37785 #15 就是其实都可以,没有哪个答案是“正确”的,我不想花费太多时间在这上面。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   917 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 19:57 · PVG 03:57 · LAX 11:57 · JFK 14:57
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.