例子如下:
拆卸如下:
對於域名,指出需要請求的服務器的地址。
:80是端口號,表示獲取服務器資源的入口。
端口號用於區分服務端口。壹個有IP地址的服務器可以提供很多服務,比如Web服務、FTP服務、SMTP服務等。那麽服務器的資源就可以通過“IP地址+端口號”來區分不同的服務。
如果把服務器比作壹棟房子,端口號可以被看作是通向不同服務的大門。
/path/to/myfile.html表示服務器上資源的路徑。以前,這樣的路徑標記的是文件在服務器上的物理路徑,而現在,路徑只代表壹個抽象的地址,不指代任何物理地址。
?key 1 = value 1 & amp;Key2=value2是請求中提供的附加參數。這些參數采用鍵-值對的形式,通過&傳遞;符號是分開的,服務器可以通過這些參數進行相應的個性化處理。
# somewhereeinthedocument是資源的部分補充。片段可以理解為資源內部的書簽。它用於向服務器指示顯示內容所在的書簽點。例如,對於壹個HTML文件,瀏覽器將滾動到壹個特定的或最後瀏覽的位置。對於壹個音頻或視頻資源,瀏覽器會跳轉到相應的時間節點。
上面說的是絕對路徑,但是URL也有相對路徑的形式。
URL請求的資源取決於請求的上下文,即當前環境。該URL在瀏覽器的輸入框中沒有上下文,因此必須提供絕對路徑。
但是,當URL用於文件(如HTML頁面)時,情況就大不相同了。因為瀏覽器已經有了文件的URL,所以可以自動填充文件中使用的URL缺少的部分,比如協議、域名、端口等。,所以我們可以直觀地區分相對路徑和絕對路徑。
如果URL以/開頭,瀏覽器將從根服務器獲取資源,而不是從給定的文件夾獲取資源。
我們用壹些例子來直觀的理解。
完整的URL:
隱藏協議
//developer . Mozilla . org/en-US/docs/Learn
瀏覽器使用與文件主機相同的協議。
隱藏域名
瀏覽器將使用相同的協議和相同的文件主機域名。註意,不能只隱藏域名而不隱藏協議。