Back to Blog

HTTP 協定入門

#什麼是 HTTP?

HTTP (HyperText Transfer Protocol) 是一種用於在網路上傳輸超文本 (例如 HTML) 的應用層協定。它是全球資訊網 (World Wide Web) 的基礎。

#HTTP 的請求/回應模型

HTTP 是一個客戶端-伺服器端 (client-server) 的協定。客戶端 (通常是瀏覽器) 會發送一個 HTTP 請求 (request) 給伺服器,伺服器會回傳一個 HTTP 回應 (response)

#HTTP 請求

一個 HTTP 請求包含了以下幾個部分:

  • 請求行 (Request Line): 包含了請求的方法 (例如 GETPOST)、請求的 URL 和 HTTP 的版本。
  • 請求標頭 (Request Headers): 包含了關於請求的額外資訊,例如 HostUser-AgentAccept 等。
  • 請求主體 (Request Body): 包含了要傳送給伺服器的資料,例如表單資料。

#HTTP 回應

一個 HTTP 回應包含了以下幾個部分:

  • 狀態行 (Status Line): 包含了 HTTP 的版本、狀態碼 (例如 200 OK404 Not Found) 和狀態訊息。
  • 回應標頭 (Response Headers): 包含了關於回應的額外資訊,例如 Content-TypeContent-LengthSet-Cookie 等。
  • 回應主體 (Response Body): 包含了伺服器回傳的資料,例如 HTML 文件、JSON 資料等。

#HTTP 方法

  • GET: 取得資源。
  • POST: 建立資源。
  • PUT: 更新資源。
  • DELETE: 刪除資源。

#HTTP 狀態碼

  • 2xx (成功): 200 OK, 201 Created
  • 3xx (重新導向): 301 Moved Permanently, 302 Found
  • 4xx (客戶端錯誤): 400 Bad Request, 401 Unauthorized, 404 Not Found
  • 5xx (伺服器端錯誤): 500 Internal Server Error, 503 Service Unavailable