1. 程式人生 > >HTTP 權威指南 第二章 URL 與資源

HTTP 權威指南 第二章 URL 與資源

機制 應用程序 之間 轉義 mailto amp 路徑 path 內容

前言

這一章節講述了關於 URL 的相關知識,主要包括下面的內容:

  1. URL 語法
  2. URL 快捷方式
  3. URL 編碼與字符規則
  4. 常見的 URL 方案
  5. URL 的未來——URN

URL 語法

一般格式(九個組件):
<scheme>://<user>:<password>@<host>:<port>/<path>;<param>?<query>#<frag>

URL 主要的三個組件:

  1. 第一部分: URL 的「方案」(scheme)
  2. 第二部分: URL 的「主機」(host)
  3. 第三部分: URL 的「路徑」(path)

其他的五個組件:

  • password: URL 的「密碼」用戶名後面的密碼,以 “:” 分隔
  • user & password: URL 的「用戶和密碼」,與 URL 其他部分以 "@" 分隔
  • params: URL 的「參數」使用這個組件指定參數,與 和其他 param 之間以 ";" 分隔
  • query: URL 的「詢問」使用這個組件傳遞參數以激活應用程序,與 URL 其余部分以 "?" 分隔
  • frag: URL 的「片段」 一小片或者一部分資源的名字,與 URL 其他部分以 "#" 分隔(不會傳遞給服務器,在客戶端內部使用)

常見的 URL 方案

  • http:默認端口為 80
  • https:與 http 方案的語法相同,只是中間加了網景的 SSL(端到端的加密機制),默認端口為 443
  • mailto:基本格式與 URL 標準格式不同: mailto:
  • ftp
  • rtsp,rtspu
  • file
  • news
  • telnet

URL 快捷方式:相對 URL 和自動擴展 URL

相對 URL

算法通過繼承基礎 URL 來獲得相對 URL,取得相應的資源.

自動擴展 URL

  1. 主機名相對擴展:在地址中輸入 yahoo, 那麽自動擴展出前面的 www. 和後面的 .com
  2. 歷史擴展:瀏覽器儲存用戶過去訪問過的 URL, 當你輸入 URL的時候,瀏覽器進行自動的匹配

URL 的編碼與字符規則

URL 的編碼字符中包括了以下:

  1. URL 字符集:使用 US-ASCII 字符集(7位二進制碼)
  2. 轉義字符:比如空格、~、%等等:使用%後面加表示字符的 ASCII 碼的十六進制數.

需要註意:
在轉義字符中,存在字符限制的字符,即 URL 中保留以及受限的字符,比如: #、?、@...

URN 簡介

URN 是 uniform resource name 的簡稱,中文名為統一資源名.
基本思想:在搜索資源的時候加入一個中間層,包含資源定位符,對資源實際的 URL 進行跟蹤和登記.





HTTP 權威指南 第二章 URL 與資源