controller 的 url 要区分大小写不? - V2EX
请不要在回答技术问题时复制粘贴 AI 生成的内容
NoKey

controller 的 url 要区分大小写不?

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

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

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

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

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

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

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

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

    就两种

    a_b

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

    区分大小写之后一个更大的问题在于,一些大小写区别过了段时间后你自己都会忘记掉
    vituralfuture
        19
    vituralfuture  
       Sep 29, 2024 via Android
    用减号的优点是搜索引擎友好,减号会被认为是单词分隔符
    About     Help     Advertise     Blog     API     FAQ     Solana     5798 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 65ms UTC 06:14 PVG 14:14 LAX 23:14 JFK 02:14
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86