昨天大致談了網站內容是怎麼被下載到電腦裡的,今天稍微深入一點聊聊關於 HTTP 這個協定的一些簡單並且比較常見的定義。
如果你只是在網址列打上網址按下 Enter,瀏覽器會送出 HTTP GET 的請求來獲取 HTML 等檔案。
等等,什麼叫做 HTTP GET?這邊就要提到 HTTP 所定義的 Method(方法)了,在送出請求時需要指定一個 Method。而這邊的 Method 指的是透過 HTTP 來做什麼事情,例如 GET 就是其中一種,用來請求一些文本、圖片等資源。
除此之外還有另外 7 個不同的 Methods,但是最常用到的一般只有 GET 以及 POST 兩種。而 POST 是用來提交一些東西,可能會改變伺服器狀態、資料庫內容等,通常提交表單用的就會是 HTTP POST。
有請求 Method,另一邊也有 Response Status Code。HTTP 將其定義成一個 3 位數字,用來表示回覆的狀態。
以上分別由 1 至 5 開頭的,表示不同的意思,例如 200
,就是 OK 的意思,代表你的請求成功了,在 GET 的請求下你便會拿到你請求的檔案,若是用 POST 提交表單則表示提交成功。
其中 404 Not Found 應該算是大家最熟悉的 Status Code,總是可以看到大大的 404 三個數字,告訴你找不到。
但有時會聽到一些疑問,這個 404 是怎麼跑出來的?是網路有問題嗎,還是網站壞掉了?
*404(來源:Unsplash)
探究其背後,你所看到的 404 頁面,都是網站伺服器的回應。有時會看到很有設計感的 404,這也是網站設計者製作的,讓請求的資源找不到時(例如網址的部分打錯、原文章被刪除了),有個畫面可以被瀏覽器渲染。
今天聊了常見的 HTTP 定義,在有了對這個協定基礎的認識之後,我們明天來進一步看看,更安全的 HTTP,HTTPS。