IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> HTTP协议 -> 正文阅读

[网络协议]HTTP协议

网络协议

计算机之间交换信息的规则

图解HTTP

HTTP协议

用于计算机网络中数据传输的规则和标准

程序:有序的计算机代码指令

TCP/IP协议

链路层

网络层

传输层

应用层

当你输入url地址之后发生了什么?※

request:请求

response:响应

  1. 地址跳转
  2. 查找缓存
  3. 域名解析(DNS)解析成IP地址
  4. 建立TCP链接【包含三次握手】
  5. 发起请求(request)
  6. 接收响应(respinse)
  7. 四次握手,断开连接
  8. 加载DOM树
  9. 加载CSS树
  10. DOM解构和CSS合并渲染

TCP协议

特点:提供一种面向链接,可靠的字节流服务

TCP三次握手※

TCP四次握手※

HTTP(超文本传输协议)

特点※

  1. 简单快速,可以传输任意类型(MIME)
  2. 无状态
  3. 无连接

请求过程※

  1. 建立连接
  2. 发送请求(request)
  3. 接收响应结果(response)
  4. 关闭连接

HTTP请求方式※

  1. GET 查寻东西
    1. 明文传输
    2. 传输的数据量小
    3. 不安全
    4. 加载资源文件,查询数据
  2. POST 添加东西
    1. 以文件形式传输
    2. 传输的数据不限制
    3. 大多用于新增功能
  3. PUT 修改功能
  4. DELETE 删除功能
  5. HEAD 头部信息
    1. 配置信息
  6. OPTIONS 查看服务器支持的请求类型是什么

HTTP请求头格式【HEAD】※

请求行:【请求类型、URL地址、HTTP版本号】

请求头:【key:value】

空行

请求正文:【参数】

HTTP响应头格式※

响应行:【HTTP版本号、状态码】

响应头:【key:value】

空行

响应正文:【结果】

了解WebSocket

基于TCP连接的一个长连接协议

通常:

  1. 聊天室
  2. 股票
  3. 网络游戏
  4. 系统通知

HTTP状态码【服务器给客户端的】※

  • 1xx:请求
  • 2xx:成功
  • 3xx:重定向
  • 4xx:客户端报错
  • 5xx:服务端报错
100请求
200 OK客户端请求成功
301永久重定向
302临时重定向
304当前资源来自于缓存
400客户端请求有语法错误,不能被服务器理解
401请求未经授权
403服务器收到请求,但是拒绝提供服务
404资源找不到
500服务器发生不可预期的错误
503服务器当前不能处理客户端的请求,一段时间后可恢复

HTTP的缓存机制

  1. 本地缓存

    1. 浏览器保存的部分缓存到硬盘中
  2. 强制缓存

    1. Expires:代表某个资源的过期时间,时间可能有误差,用的较少
    2. Cache-Control:精准控制缓存策略,可控制时间也可控制是否添加缓存
  3. 协商缓存

    1. ETag

流程:※

  1. 读取本地缓存 => 200
  2. 强制缓存【Expired、Cache-Control】 => 200
  3. 协商缓存【Etag,Last-Modified】 => 304
  4. 读取最新数据 => 200

HTTP端口号

端口号

  • http:80端口
  • https:443端口
  • 范围:165536,(11024被系统占用)

推荐的端口号:8080

了解HTTPS

传输方式:数据内容首先以对称加密方式(公钥)加密,传输过程再使用非对称加密方式(私钥)加密的双重加密方式

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-09-14 13:44:27  更:2021-09-14 13:44:52 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 1:41:21-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码