HTTP请求与响应

一、HTTP请求结构详解

HTTP请求由三部分组成:​请求行请求头请求体,是客户端向服务器发起资源操作的标准化格式。

  1. 请求行(Request Line)​

    • 构成方法 URI 协议版本
      • 方法:定义操作类型(8种核心方法):
        • GET:获取资源(幂等)
        • POST:提交数据(非幂等)
        • PUT:更新资源(幂等)
        • DELETE:删除资源(幂等)
        • HEAD:获取响应头
        • OPTIONS:查询服务器支持的方法
        • PATCH:局部更新资源
        • TRACE:追踪请求路径
      • URI:资源标识符(如/api/user或完整URL)
      • 协议版本HTTP/1.1(主流)或HTTP/2(支持多路复用)
  2. 请求头(Request Headers)​

    • 功能:传递客户端环境、数据格式、缓存策略等元信息
    • 核心字段
      字段名作用示例
      Host目标主机域名(HTTP/1.1强制要求)

      5

      User-Agent客户端类型(如浏览器/爬虫标识)

      6

      Content-Type请求体数据类型(如application/json
      Authorization身份认证令牌(如Bearer token

      9

      Cache-Control缓存策略(如max-age=3600

      7

      Accept-Encoding支持压缩算法(如gzip

      5

  3. 请求体(Request Body)​

    • 适用场景:POST/PUT等非幂等方法的数据提交
    • 数据格式
      • 表单数据application/x-www-form-urlencoded
      • 文件上传multipart/form-data
      • 结构化数据application/json(现代API主流)
    • 长度控制:通过Content-Length或分块传输编码
二、HTTP响应结构详解

HTTP响应包含状态行响应头响应体,用于传递服务器处理结果。

  1. 状态行(Status Line)​

    • 构成协议版本 状态码 状态描述
    • 状态码分类
      类别含义常见状态码
      1xx信息响应(已接收)100 Continue(继续发送请求体)

      1

      2xx成功处理200 OK(默认成功)

      4

      201 Created(资源创建成功)
      3xx重定向301 Moved Permanently(永久重定向)
      304 Not Modified(缓存未更新)

      7

      4xx客户端错误400 Bad Request(语法错误)
      403 Forbidden(权限不足)

      10

      5xx服务器错误500 Internal Server Error(通用错误)
      503 Service Unavailable(服务不可用)
  2. 响应头(Response Headers)​

    • 核心字段
      字段名作用示例
      Content-Type响应体类型(如text/html; charset=UTF-8

      5

      Content-Length数据长度(字节)
      Cache-Control客户端缓存策略(如no-store禁用缓存)
      Set-Cookie会话标识设置(如sessionid=abc123

      7

      Location重定向目标地址(配合3xx状态码)

      4

  3. 响应体(Response Body)​

    • 数据形式
      • 结构化数据:JSON/XML(API接口)
      • 非结构化数据:HTML/CSS/JS(网页渲染)
      • 二进制数据:图片/视频/文件下载
    • 压缩传输:通过Content-Encoding: gzip减少带宽
 

Content-Disposition: attchement;filename=...**

  • 作用:强制浏览器下载文件而非渲染,指定文件名
  • 在后端手动设置的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值