URL 規范 整理


URL 規范

  1. 不用大寫;(強制)
  2. 用中杠-不用下杠_;(強制)
  3. 參數列表要encode,編碼使用utf-8;(強制)
  4. URI中的名詞表示資源集合,使用復數形式。(建議)
  5. 增加版本號(建議)

URI中統一使用小寫字母

根據RFC3986定義,URI是對大小寫敏感的,所以為了避免歧義,我們盡量用小寫字符。但主機名(Host)和scheme(協議名稱:http/ftp/...)對大小寫是不敏感的。

URI中盡量使用連字符"-"代替下划線"_"的使用

連字符"-"一般用來分割URI中出現的字符串(單詞),來提高URI的可讀性,例如:
http://api.example.restapi.org/blogs/mark-masse/entries/this-is-my-first-post

使用下划線"_"來分割字符串(單詞)可能會和鏈接的樣式沖突重疊,而影響閱讀性。但實際上,"-"和"_"對URL中字符串的分割語意上還是有些差異的:"-"分割的字符串(單詞)一般各自都具有獨立的含義,可參見上面的例子。而"_"一般用於對一個整體含義的字符串做了層級的分割,方便閱讀,例如你想在URL中體現一個ip地址的信息:210_110_25_88 .

URL增加版本號

根據項目的更新,原來的URL可能被多個項目所使用,需要兼容原有系統的情況下,支持新業務。
提供給內部系統使用的api,建議使用`/api/v1/`開頭, 提供給前端APP使用的api,建議使用`/web-api/v1/`開頭

/api/v1/loan
/web-api/v1/loan

資源集合 vs 單個資源

URI表示資源的兩種方式:資源集合、單個資源。

資源集合:

/zoos //所有動物園
/zoos/1/animals //id為1的動物園中的所有動物


單個資源:

/zoos/1 //id為1的動物園

 

避免層級過深的URI

/在url中表達層級,用於按實體關聯關系進行對象導航,一般根據id導航。

過深的導航容易導致url膨脹,不易維護,如 GET /zoos/1/areas/3/animals/4,盡量使用查詢參數代替路徑中的實體導航,如GET /animals?zoo=1&area=3;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM