• 请不要在回答技术问题时复制粘贴 AI 生成的内容
NoKey
V2EX  ›  程序员

controller 的 url 要区分大小写不?

  •  
  •   NoKey · Sep 29, 2024 · 3752 views
    This topic created in 767 days ago, the information mentioned may be changed or developed.
    我看有地方说要全小写,但是很多单词挤到一起全小写看起来很难受
    有啥专门的标准说明这个么?
    谢谢
    19 replies  •  2024-09-29 20:58:07 +08:00
    BeijingBaby
    BeijingBaby
    PRO
    Sep 29, 2024
    1
    /foo-bar
    /fooBar
    /foo_bar
    /foobar
    都行,看自己喜欢了
    bitmin
    bitmin
    Sep 29, 2024
    2
    我喜欢 /foo-bar 这种单词分开看着舒服

    /fooBar 这种如果很长看的难受
    Oktfolio
    Oktfolio
    Sep 29, 2024❤️10
    3
    个人认为

    flatcase ❌❌
    camelCase ❌
    underscore_case ❌
    kebab-case ✅
    kcccc
    kcccc
    Sep 29, 2024
    4
    这个没有死规的标准吧,都是围绕可读性来说。
    个人习惯使用连字符而不是下划线,如 2 楼说的。
    zgsi
    zgsi
    Sep 29, 2024
    5
    C#demo 是首字母大写,所以我现在 Controller 和 Action 首字母都是大写
    KagurazakaNyaa
    KagurazakaNyaa
    Sep 29, 2024
    6
    url 的 schema 和主机部分是很明确不区分大小写的,但是后面的路径按 rfc 我记得只是“应该”而非“必须”区分大小写,所以如果是为了最大兼容性考虑,最好是全部小写
    wlingxiao
    wlingxiao
    Sep 29, 2024
    7
    自己把握不准就找个参考呗,比如 github 的接口是这种

    https://api.github.com/repositories/42/actions/permissions/selected-actions
    snipking
    snipking
    Sep 29, 2024
    9
    关于 url 的规定,目前最详细的是 RFC3986 https://datatracker.ietf.org/doc/html/rfc3986

    事实上允许直接使用的字符包括 数字 字母 - _ . ~,其它都得 urlEncoding

    字母可以使用大写和小写,但是在 schema 和 host 上大小写不敏感,所有大写均视为小写,但是在 path 和 parameter 上是大小写敏感的

    所以具体到 controller 的 url 规范,以下均可,只要保持项目内遵从唯一规范,别搞出混用就行了

    flatcase ✅
    camelCase ✅
    underscore_case ✅
    kebab-case ✅
    snipking
    snipking
    Sep 29, 2024
    10
    @snipking #9 更正,不是 parameter ,是 query
    justfindu
    justfindu
    Sep 29, 2024
    11
    个人认为 aabbcc-ccddee 这样
    adoal
    adoal
    Sep 29, 2024
    12
    换个思路,干脆用无意义的字符串比如 UUID 做路径,反正现在的用户都是从搜索和导航来找的,使用时也不会关心 URL ,甚至根本注意不到
    AdamMing
    AdamMing
    Sep 29, 2024
    13
    投 kebab-case 一票
    Ayanokouji
    Ayanokouji
    Sep 29, 2024
    14
    没啥标准,但我投 kebab-case 一票
    cutiechi
    cutiechi
    Sep 29, 2024
    15
    kebab-case +1
    wolfie
    wolfie
    Sep 29, 2024 via Android
    16
    烤串 > 驼峰。
    url 禁止下划线。
    DeadLion
    DeadLion
    Sep 29, 2024
    17
    不建议驼峰

    就两种

    a_b

    a-b
    BeautifulSoap
    BeautifulSoap
    Sep 29, 2024
    18
    域名是不区分大小写的,所以 url 和域名统一比较好

    区分大小写之后一个更大的问题在于,一些大小写区别过了段时间后你自己都会忘记掉
    vituralfuture
    vituralfuture
    Sep 29, 2024 via Android
    19
    用减号的优点是搜索引擎友好,减号会被认为是单词分隔符
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2948 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 715ms · UTC 11:20 · PVG 19:20 · LAX 03:20 · JFK 06:20
    ♥ Do have faith in what you're doing.