协议是约定,不是魔法
- 请求行 + 头 + 空行 + body,四段骨架走天下。
- 客户端该判状态码数字,而不是原因短语。
星图 · 活页
HTTP 与 CORS 的八个小实验:逐帧走一遍完整访问的时序,拆开请求与响应报文,把“无状态、幂等、预检、缓存、重定向、版本演进”从概念拨成手感。
讲义 · 后端第一性原理 · 第一章
“无状态、幂等、预检、缓存、重定向”这些词,光看定义总要绕半天。这一页放了八个小实验, 每个都能拨动参数、看见结果——把概念摸成手感,比背下来牢靠。
在 HTTP 说话之前,还得先经过 DNS、TCP,HTTPS 还要加上 TLS。按「下一步」,看每一跳是谁在讲话。
DNS把域名换成 IPTCP建立可靠、有序的通道TLSHTTPS 才有,谈好加密HTTP真正传请求与响应
骨架都是四段:起始行 + 头 + 空行 + 可选的 body。换方法、换路径、换状态码,看看报文怎么变; 带虚线的部分都可以点。
请求报文
响应报文
HTTP 服务器“没有记忆”。同样一次登录,靠服务器存会话和靠请求自带 token,在多台机器之间差别很大。
POST 天生不幂等。真正的请求确实发出去了,只是响应在路上丢了——客户端除了重试,别无选择。
已扣款:$0
页面在 https://example.com,API 在 https://api.example.com —— 主机不同,就是跨源。调参数,看浏览器怎么决定。
服务器回了 Cache-Control: max-age=10。试试这个顺序:发起 GET → 快进 6 秒 → 再 GET → 改内容 → 快进 6 秒 → 再 GET。
同样把 POST /old 指到 /new,挑一个状态码,看浏览器重发的时候带不带 body。
从每请求一次握手,到多路复用,再到换掉 TCP——每一代都在还上一代欠下的债。
概念是抓手,不是终点;遇到具体问题,还是回到请求与响应本身去推。