http笔记,开发须知(Hyper Text Transfer Protocol 超文本传输协议)

1. HTTP 概述

  • HTTP(Hypertext Transfer Protocol)
    • 用途:Web浏览器与Web服务器之间通信的基础协议。
    • 工作模式:基于客户端-服务器架构,通过请求-响应模型进行通信。
    • 特点:无状态协议,每次请求独立;默认端口号:80;基于TCP/IP的高级协议;

2. HTTP与HTTPS

  • HTTP:不加密,传输速度快,适用于大多数Web应用,但易受中间人攻击。
  • HTTPS:通过SSL/TLS加密传输数据,确保数据安全,但有略微的性能开销。

3. HTTP 请求

3.1 请求方法
方法描述
GET请求资源,不修改服务器状态。数据附加在URL中,长度有限制。
POST向服务器提交数据,通常用于表单提交、文件上传。数据包含在请求体中。
PUT上传资源,若已存在则替换。
DELETE请求删除指定资源。
HEAD类似GET,但只请求响应头。
OPTIONS查询服务器支持的请求方法。
PATCH对资源进行部分更新。
3.2 请求结构
  • 请求行:包含请求方法、请求URL和HTTP版本。

  • 请求头(Headers)

    • 常见请求头
      请求头描述
      Host目标服务器域名。
      User-Agent客户端浏览器信息。
      Accept客户端可接受的媒体类型。
      Content-Type发送数据的格式。
      Authorization用于HTTP认证的凭据。
      Cookie客户端存储的会话信息。
  • 请求空行:就是用于分割POST请求的请求头

  • 请求体(Body):包含在POST、PUT等请求中的数据,如表单信息、文件等。

4. HTTP 响应

4.1 响应状态码
状态码含义详细描述
200OK请求成功,服务器返回请求的资源。
301Moved Permanently资源已永久移动到新URL。
400Bad Request请求语法错误,服务器无法处理。
401Unauthorized需要身份验证。
403Forbidden无权限访问。
404Not Found请求的资源未找到。
500Internal Server Error服务器内部错误。
502Bad Gateway网关错误。
503Service Unavailable服务不可用。
4.2 响应结构
  • 状态行:协议版本、状态码、状态描述。

  • 响应头(Headers)

    • 常见响应头
      响应头描述
      Content-Type响应内容的媒体类型。
      Content-Length响应体的长度。
      Cache-Control指定缓存机制。
      Set-Cookie服务器设置的Cookie,用于会话管理。
      Location重定向时的新URL。
  • 响应空行:就是用于分割POST请求的请求头

  • 响应体(Body):实际返回的数据,如HTML文档、JSON等。

5. HTTP 状态保持

  • 无状态协议:HTTP不会自动保存请求的状态。
  • 状态保持机制
    • Cookie:客户端保存的会话信息。
    • Session:服务器端保存的用户会话信息。
    • Token:常用于API认证的Token技术。

6. HTTP/2 特性

  • 二进制分帧:减少解析开销。
  • 多路复用:通过一个TCP连接处理多个请求。
  • 头部压缩:减少传输的头部信息量。
  • 服务器推送:服务器预先发送资源。

7. HTTP 性能优化

  • 减少请求数:合并文件、使用图像精灵。
  • 启用压缩:使用Gzip或Brotli压缩响应体。
  • 缓存控制:合理使用缓存。
  • 使用CDN:通过CDN将内容缓存到离用户更近的服务器。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

胡耀超

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值