HTTP的协议格式与Fiddler的应用

简介: HTTP的协议格式与Fiddler的应用

🔎HTTP协议是什么


HTTP(超文本传输协议)是一种应用非常广泛的应用层协议

对于 TCP / IP 分层模型的理解, 可以参考TCP / IP 模型

HTTP 协议往往是基于传输层的 TCP 协议实现的

(HTTP1.0, HTTP1.1, HTTP2.0 均为 TCP 实现, HTTP3 基于 UDP 实现)

🔎HTTP协议的工作过程


  • HTTP 是一种 “一问一答” 格式的协议(一个请求对应一个响应)
  • 可以将浏览器看作是一个 HTTP 客户端
  • 当我们在浏览器输入一个 “网址”, 此时浏览器(客户端)就会给对应的服务器发送一个 HTTP 请求
    服务器收到这个请求后, 经过处理, 会返回给浏览器(客户端)一个 HTTP 响应

🔎HTTP的协议格式


此处借助 Fiddler 工具进行抓包, 帮助认识 HTTP 的协议格式

Fiddler 的下载地址

Fiddler 的应用


  • 左侧窗口显示了所有的 HTTP 请求 / 响应, 可以选中某个请求查看详情
  • 右侧上方显示了 HTTP 请求的报文内容
    (点击 Raw 标签可以查看详细的数据格式)
  • 右侧下方显示了 HTTP 响应的报文内容
    (点击 Raw 标签可以查看详细的数据格式)
  • 请求和响应的详细数据, 可以通过点击右下角的 View in Notepad 进行查看

以 Sogou 浏览器举例

  • 上方显示了 HTTP 请求的报文内容
  • 下方显示了 HTTP 响应的报文内容

点击 View in Notepad

查看 HTTP 请求的详细数据格式

  • 一个 HTTP 请求的详细数据格式, 包括了四个部分
  • 首行
  • header
  • 空行
  • 正文(body) 空行后面的内容, 有时候可以没有 body



查看 HTTP 响应的详细数据格式

出现乱码时表示响应可能是被压缩过的

我们需要点击下面这个按钮进行解压

解压后的效果

  • HTTP 响应的详细数据格式
  • 首行
  • header
  • 空行
  • 正文(body)

抓包工具原理

Fiddler 相当于 “代理”

浏览器访问服务器时, 就会把 HTTP 请求先发给 Fiddler

Fiddler 再把请求转发给服务器

当服务器返回数据时, Fiddler 拿到返回的数据, 再把数据交给浏览器

举个栗子🥝

滑稽老哥(浏览器)想喝可乐, 但他此刻懒得下楼

于是他就让在楼下的舍友(Fiddler)帮忙捎带一瓶可乐上来(HTTP 请求)

舍友(Fiddler)收到滑稽老哥(浏览器)的消息, 就去自动贩卖机买可乐(转发请求到服务器)

舍友拿到可乐后(服务器返回数据), 将可乐交付于滑稽老哥(浏览器)

协议格式总结

图片来自网络

🔎结尾

创作不易,如果对您有帮助,希望您能点个免费的赞👍

大家有什么不太理解的,可以私信或者评论区留言,一起加油

相关文章
|
4月前
|
数据采集 数据可视化 API
QUIC协议优化:HTTP/3环境下的超高速异步抓取方案
本文介绍了一种基于QUIC和HTTP/3的异步爬虫方案,用于抓取知乎热榜数据并生成趋势图。通过HTTPX与aioquic结合实现高性能连接复用,配合代理IP绕过反爬限制,提取标题、热度等信息。利用Python代码示例展示了异步抓取流程,并借助Matplotlib绘制话题热度变化图表。分析显示突发热点生命周期短,而深度话题热度更稳定。此方案可优化内容运营策略,快速捕捉潜在爆款话题。
168 4
QUIC协议优化:HTTP/3环境下的超高速异步抓取方案
|
2月前
|
缓存 监控 搜索推荐
301重定向实现原理全面解析:从HTTP协议到SEO最佳实践
301重定向是HTTP协议中的永久重定向状态码,用于告知客户端请求的资源已永久移至新URL。它在SEO中具有重要作用,能传递页面权重、更新索引并提升用户体验。本文详解其工作原理、服务器配置方法(如Apache、Nginx)、对搜索引擎的影响及最佳实践,帮助实现网站平稳迁移与优化。
416 68
|
26天前
HTTP协议中请求方式GET 与 POST 什么区别 ?
GET和POST的主要区别在于参数传递方式、安全性和应用场景。GET通过URL传递参数,长度受限且安全性较低,适合获取数据;而POST通过请求体传递参数,安全性更高,适合提交数据。
294 2
|
2月前
|
存储 网络协议 安全
HTTP 协议及会话跟踪机制详解
本文详解了 HTTP 协议的核心知识,包括其定义(超文本传输协议,基于 TCP,规定客户端与服务器通信规则)及与 HTTPS 的区别(安全性、端口、资源消耗)。 介绍了 GET 与 POST 请求的差异(参数限制、安全性、应用场景),以及 Restful 风格(通过 URL 定位资源,请求方式决定操作)。列举了常见 HTTP 状态码(如 200 成功、404 资源未找到),对比了转发与重定向的区别(服务器端一次请求 vs 客户端两次请求)。 还阐述了会话跟踪机制:Cookie 基于客户端存储,通过Set-Cookie和Cookie头实现,安全性较低;Session 基于服务端存储,依赖 C
225 1
|
2月前
|
网络协议 安全 API
WebSocket、Socket、TCP 和 HTTP 的差别与应用场景
WebSocket、Socket、TCP 和 HTTP 是网络通信中的四大“使者”,各具特色:HTTP 适合短时请求,TCP 稳定可靠,Socket 灵活定制,WebSocket 实现实时双向通信。本文用通俗语言解析它们的区别与应用场景,助你为项目选择最合适的通信方式。
991 3
|
1月前
|
缓存 网络协议 UED
深度解析HTTP协议从版本0.9至3.0的演进和特性。
总的来说,HTTP的演进是互联网技术不断发展和需求日益增长的结果。每一次重要更新都旨在优化性能,增进用户体验,适应新的应用场景,而且保证了向后兼容,让互联网的基础架构得以稳定发展。随着网络技术继续进步,我们可以预期HTTP协议在未来还会继续演化。
333 0
求助!怎么上传第三方HTTPS证书?为什么我上传lets encrypt的证书显示私钥格式异常?
用户上传证书时遇到问题,提示格式异常,已尝试转换RSA格式仍未解决。
|
2月前
|
XML 安全 网络架构
深度对比SOAP与HTTP协议:详细理解它们的工作原理和差异
在设计服务和系统交云策略时,考虑到上述差异是至关重要的。SOAP适合需要高安全性、可靠性和事务支持的企业级应用。而HTTP适合Web界面浏览、RESTful服务和需要快速响应的轻量级通信。根据具体需求和上下文,开发者可以选择合适的协议以实现最优的系统性能和用户体验。
279 0
|
3月前
|
缓存
HTTP协议深度剖析:常见请求头信息讲解
这就是HTTP请求头背后的工作原理,希望通过比作“邮差”和“标签”,可以让你对这个繁琐技术更有感触,更得心应手。尽管这些信息可能很琐碎,但了解了它们的含义和工作方式,就等于揭开了HTTP协议神秘的面纱,掌控了网络交流的核心。你还等什么,赶快动手尝试一下吧!
121 17

热门文章

最新文章