iT邦幫忙

2025 iThome 鐵人賽

DAY 29
0
Security

從0基礎開始起飛,一起一步步踏入資安系列 第 29

[ Day 29 ] 上篇的http補充、418茶壺事件

  • 分享至 

  • xImage
  •  

HTTP Request(請求)→ 後端

GET vs POST

項目 GET POST
資料位置 放在網址(Query String) 放在 Request Body
安全性 參數容易被看到(帳密會「裸奔」) 資料不在網址中
用途 讀取資料(搜尋、查詢) 傳送資料(登入、上傳、表單)
快取 可被快取 不容易快取

為什麼登入表單幾乎都用 POST?

  • 因為如果用 GET,帳號密碼會直接顯示在網址列,風險很大。

常見 Header 解說(Request Headers)

HTTP Header 是請求中最容易被忽略但其實超重要的部分。它們負責「夾帶瀏覽器與使用者資訊」讓伺服器知道怎麼處理這個請求

Header 名稱 說明
Host 告訴伺服器「你想去哪個網站」 → 一個伺服器可能有多個網站,靠這個分流
User-Agent 告訴伺服器「你是用什麼設備 / 瀏覽器來的」
Referer 告訴伺服器「你是從哪一個頁面連過來的」
Cookie 附帶之前伺服器設定的 Cookie(例如登入身分)
Content-Type 告訴伺服器 Body 的資料格式
Content-Length 告訴伺服器 Body 的長度(位元組)

User-Agent 為什麼會有「Mozilla」?

User-Agent 欄位裡常看到:

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 ...

這跟 Mozilla 軟體社群有關。早期網頁標準支援差,很多網站只對「Mozilla 系瀏覽器」開放進階功能,後來各家瀏覽器(例如 Chrome、Safari)為了相容,也都在 UA 裡放上「Mozilla/5.0」,成為歷史遺留。

  • 是只有 Mozilla 能跑網站,而是這一行字成了「相容旗號」。

Request Body

Request Body 就是 POST、PUT、PATCH 請求中「要送給伺服器的資料」,例如登入資訊、表單內容、JSON。
常見 Header 搭配:

  • Content-Type: application/json
  • Content-Length: 123

範例 :

{
  "username": "ken",
  "password": "1234"
}

HTTP Response(回應)→ 前端

瀏覽器發出 Request 後,伺服器會回一個 Response,包含狀態碼、標頭、資料。
範例:

HTTP/2 200 OK
Content-Type: text/html; charset=UTF-8
Content-Length: 1024

<html>...</html>

起始行(Status Line)

HTTP/2 200 OK
  • HTTP/2 → 協定版本
  • 200 → 狀態碼
  • OK → 狀態描述

狀態碼分類與常見代表

類別 範圍 意義
1xx 100–199 資訊(少見)
2xx 200–299 請求成功
3xx 300–399 重新導向
4xx 400–499 使用者/請求有錯
5xx 500–599 伺服器出錯

常見實例

狀態碼 名稱 說明
200 OK 一切正常
301 Moved Permanently 永久搬家(轉址)
302 Found 臨時轉址
304 Not Modified 沒變,瀏覽器用快取
400 Bad Request 請求格式錯
401 Unauthorized 未登入
403 Forbidden 沒權限
404 Not Found 找不到
405 Method Not Allowed 方法不被允許
500 Internal Server Error 伺服器爆炸
502 Bad Gateway 中繼站壞了
503 Service Unavailable 忙碌或維修
504 Gateway Timeout 超時
418 I’m a teapot 茶壺搶救大作戰(愚人節彩蛋)
  • 4xx → 通常是你有問題
  • 5xx → 通常是伺服器出包了

418 茶壺事件

HTTP 418 "I'm a teapot" 是 1998 年 IETF 愚人節提案 RFC 2324 的一部分。
它的意思是:「如果你對茶壺發送泡咖啡的請求,它會拒絕並回傳 418:我只是茶壺,泡咖啡不關我事」
如今它變成工程師圈的幽默彩蛋
https://ithelp.ithome.com.tw/upload/images/20250929/201778971Menk45Iy3.png


上一篇
[ Day 28 ] 淺談一下http和http請求 ( http request )
下一篇
[ Day 30 ] Forensics簡介以及有關Forensics的CTF類型、工具整理
系列文
從0基礎開始起飛,一起一步步踏入資安30
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言