URI(統一資源標識符)的格式主要包括以下幾個部分:
方案(Scheme)。URI的開頭部分,定義了訪問資源時使用的協定類型,如http、https、ftp等。方案名不區分大小寫,但推薦使用小寫字母。常見的方案包括http(s)、ftp、mailto、file、data和irc等。
權威(Authority)。由用戶名和密碼組成的身份認證部分,格式為「[user[:password]@]」。這部分是可選的。
主機(Host)。指定資源所在的主機名或IP位址。IPv4地址必須表示為點分十進制格式,而IPv6地址則用方括弧括起來。
連線埠(Port)。指定伺服器連線的網路連線埠號,如果省略,將使用默認連線埠。例如,HTTP的默認連線埠是80,HTTPS的默認連線埠是443。
路徑(Path)。指定伺服器上的檔案路徑來定位特定資源。路徑通常以斜槓(/)開始,即使authority存在時也是如此。路徑可以用作檔案系統的一部分,也可以直接指向具體的資源。
查詢字元串(Query)。可選部分,用於傳遞參數給資源。它以「?」開始,後面跟隨鍵值對,鍵值對之間用「&」分隔。
片段標識符(Fragment)。可選部分,通常用於指定資源的子資源(如文檔內的特定位置)。它以「#」開始,後面跟隨資源的子標識符。
URI中的字元可以使用ASCII表示,包括大小寫字母、數字、-、.、_和~。其他字元需要進行百分號編碼。ASCII中的特殊字元(如: / ? # @)在URI中是保留字,因此也需要進行百分號編碼。在某些情況下,如用戶在用戶信息、host和path分隔設定中使用的這些字元,則可以不用編碼。