内部培训
01 第1周D3 网络HTTP

D3 网络基础 · HTTP/HTTPS

D3 网络基础 · HTTP/HTTPS

标准(必讲)。公司业务=API 生意,HTTP 是 API 的"语言",本模块是理解 D10/D13/D15 的必备前提。

教学目标(学完能做什么)

  • 能说出 HTTP 常用请求方法与用途、常见状态码含义
  • 能读懂 HTTP 请求/响应头(Host、Authorization、Content-Type、Content-Length 等)
  • 能解释 HTTPS 加密原理(TLS/证书)与公司证书自动签发(cert-manager + letsencrypt)
  • 会用 curl 完成带鉴权、带请求体、看响应头的真实 API 调用

前置要求

  • D2(TCP/IP,知道 HTTP 跑在 TCP/443 之上)

本模块在业务中的位置

  • 客户调用公司网关(newapi/sub2api)用的就是 HTTP/HTTPS API(如 /v1/chat/completions)。D10 写 API、D13 调 Claude API、D15 看计费,全部绕不开本模块。这是 API 生意的"语言课"。

内容分段

1. HTTP 是什么

  • 应用层协议,跑在 TCP 之上(HTTPS 默认 443)。
  • 请求-响应模型:客户端发请求,服务端回响应。
  • 一次请求包含:请求行(方法+路径)、请求头、请求体(可选)。

2. 请求方法

方法用途公司例子
GET读数据(幂等、无副作用)查监控状态
POST新建/触发动作(有副作用)调用 /v1/chat/completions
PUT / PATCH全量/部分更新改配置
DELETE删除删令牌
OPTIONS跨域预检(CORS)前端调后端
  • 记忆:GET 是看、POST 是干、DELETE 是删;会话类动作一律 POST。

3. 状态码

含义常见例子
2xx成功200 OK、204 无内容
3xx重定向301/302(D4 讲域名时常见)
4xx客户端错400 参数错、401 未认证、403 无权限、404 找不到、429 限流
5xx服务端错500 内部错误、502/504 网关问题
  • 业务关键401(key 无效)和 429(限流,RPM 超了)在 LLM 业务里天天见,D14 会专门处理。
  • 排查口诀:4xx 先查自己(请求方),5xx 再查服务(服务方)

4. 常见请求/响应头

Header作用
Host访问哪个域名(一个 IP 多站点的关键,D4 讲虚拟主机)
Authorization认证信息,如 Bearer sk-xxx
Content-Type请求体/响应体格式,如 application/json
Content-Length消息体长度
Set-Cookie / Cookie会话状态
X-*自定义头(业务常用,如 x-api-key
  • LLM 业务里最常见的两种认证头:Authorization: Bearer <key>x-api-key: <key>(Claude 官方用后者为主)。

5. HTTPS 与 TLS 证书

  • HTTP 明文 → HTTPS = HTTP + TLS 加密,解决"中间人偷看/篡改"。

  • 证书链:CA(证书颁发机构)→ 服务器证书;浏览器信任 CA,就信任服务器。

  • 公司实践:域名 HTTPS 由 cert-manager 自动签发 letsencrypt-prod 证书(见 CLAUDE.md TLS 一节),到期自动续签。公司服务(*.akria.net)全部 HTTPS。

  • 验证证书:

    curl -vI https://kuma.akria.net 2>&1 | grep -i "ssl\|subject"
    openssl s_client -connect kuma.akria.net:443 -servername kuma.akria.net 2>/dev/null | openssl x509 -noout -subject -issuer -dates

6. curl 实战(API 生意的标配工具)

# 基本 GET,看响应头
curl -sI https://kuma.akria.net

# 带鉴权、带 JSON 体的 POST(示例:本地或 mock 端点,勿用真实生产 key 乱发)
curl -s https://httpbin.org/headers \
  -H "Authorization: Bearer sk-test-xxxx" \
  -H "Content-Type: application/json"

# 看完整请求/响应过程
curl -v https://kuma.akria.net

# 只取响应体
curl -s https://kuma.akria.net
  • 讲师演示 -v 的详细输出:TCP 连接 → TLS 握手 → 请求行 → 响应头 → 响应体。
  • 强调:调试任何 API 问题,第一招永远是 curl -v

讲解节奏建议(约 90 分钟)

时段内容
09:00-09:10引入:API 生意的"语言",一次公司请求长什么样
09:10-09:35方法 + 状态码(对照 LLM 业务 401/429)
09:35-09:55请求/响应头(Authorization / Content-Type)
09:55-10:20HTTPS/TLS + 公司 cert-manager 自动证书(现场查一个证书)
10:20-10:50curl -v 实战演示(指认各个阶段)
10:50-11:30学员实操 curl(对应作业)
11:30-11:50常见误区 + 小结
11:50-12:00布置作业

常见误区汇总

误区正确理解
401 和 403 一样401=没认证/认证失败,403=认证了但没权限;LLM 业务 401 常见于 key 错
HTTPS 有了证书就绝对安全证书只保证加密与身份;key 泄露、业务逻辑漏洞照样出事
GET 也可以用来发会话有副作用的一律 POST;混用会带来缓存/重放问题
5xx 一定是服务端 bug5xx 也可能由上游/网关引发(502/504),排查要看全链路
看不了响应内容curl -v-i-sI 都能看;先 -v 再看体

On this page