这是一篇实操教程,介绍 Chrome 开发者工具中最常用的网页网络活动检查功能。如果想按功能查阅说明,可参阅 Network 面板参考。原文页面也提供本教程的视频版本。
什么时候使用 Network 面板
需要确认资源是否按预期下载或上传时,使用 Network(网络) 面板。常见用途包括确认资源确实发生了传输,以及检查单个资源的 HTTP 标头、内容、大小等属性。
如果目的是提升页面加载性能,应先使用 Lighthouse 面板。许多加载性能问题与网络活动无关,Lighthouse 会给出有针对性的改进建议。详见 优化网站速度。
打开 Network 面板
打开 配套演示页面,边阅读边尝试。可以将演示和教程放在两个独立窗口中。
- 按
Control+Shift+J,macOS 上按Command+Option+J,打开 DevTools。最先出现的是 Console 面板。 - 如果方便操作,可以将 DevTools 停靠在窗口底部。
- 点击 Network 标签页。
此时面板可能是空的,因为 DevTools 只有在打开期间才记录网络活动,而打开后还没有发生新的请求。
记录网络活动
重新加载演示页面。Network 面板会把页面产生的全部网络活动记录到 Network Log(网络日志) 中。
每一行代表一个资源,默认按时间顺序排列。顶部通常是主 HTML 文档,底部是最后请求的资源。默认列如下:
| 列 | 含义 |
|---|---|
| Status | HTTP 响应状态码 |
| Type | 资源类型 |
| Initiator | 什么操作导致了请求;点击其中的链接可以跳到相关源代码 |
| Size | 通过网络传输的资源量 |
| Time | 请求耗时 |
网络日志上方的图表叫 Overview(概览)。本教程不使用它,可以按需隐藏,操作入口见 网络面板参考。
只要 DevTools 保持打开,就会继续记录活动。先查看日志底部并记下最后一项,再点击演示中的 Get Data。日志底部会增加 getstarted.json,因为该按钮触发了对此文件的请求。
显示更多信息
网络日志的列可以配置:不需要的列可以隐藏,默认隐藏的列也可以显示。
右键点击表头,选择 Domain,就会增加每个资源的域名。将鼠标悬停在 Name 列的单元格上,还能查看资源的完整 URL。
模拟较慢的网络
开发计算机的网络通常比用户移动设备的网络快。使用网络限速,可以更好地理解移动设备上的加载时间。
- 点击 Throttling 下拉菜单,默认值为 No throttling。
- 选择 3G。
- 长按浏览器的重新加载按钮,选择 Empty Cache And Hard Reload。
再次访问页面时,浏览器通常会从缓存取得部分文件,以加快加载。清空缓存并强制重新加载会要求通过网络重新获取所有资源,有助于观察首次访问者的体验。
Empty Cache And Hard Reload 仅在 DevTools 打开时可用。
捕捉加载过程的截图
截图可记录页面在加载过程中不同时刻的外观,并与这些时段加载的资源对应。
- 点击 Network Settings 的设置图标。
- 勾选 Screenshots。
- 再次使用 Empty Cache And Hard Reload 加载页面。Screenshots 区域会显示各时刻的页面缩略图。
- 点击第一张缩略图,DevTools 会显示当时发生的网络活动。
- 取消 Screenshots 勾选,关闭截图区域。
- 再次加载页面。
检查单个资源的详情
点击日志中的资源,便能查看详细信息。以演示里的 getstarted.html 为例:
- 点击
getstarted.html,打开 Headers,检查 HTTP 标头。 - 点击 Preview,查看 HTML 的基本渲染结果。如果 API 以 HTML 返回错误信息,渲染后的内容可能比源代码更容易阅读;检查图片时也适用。
- 点击 Response,查看 HTML 源代码。如果文件经过压缩,可以点击该标签页底部的格式化按钮,重新排版以便阅读。
- 点击 Initiator,查看请求发起者链的树状关系。
- 点击 Timing,查看该资源网络活动的时间分解。
- 点击关闭按钮,回到网络日志。
搜索网络标头和响应
需要在全部资源的 HTTP 标头和响应中查找字符串或正则表达式时,使用 Search 标签页。
例如,想检查资源是否采用合理的缓存策略:
- 点击面板操作栏中的搜索图标,或在 macOS 上按
Command+F,Windows/Linux 上按Control+F。 - Search 区域在网络日志左侧打开。
- 输入
Cache-Control,按 Enter。结果会列出标头或内容中出现该文本的位置。 - 点击结果。如果匹配发生在标头中,打开 Headers;如果发生在响应内容中,打开 Response。
- 关闭 Search 和 Headers。
过滤资源
DevTools 支持多种方式,隐藏与当前任务无关的资源。Filters 工具栏默认应显示;若没有显示,点击过滤图标。
按字符串、正则表达式或属性过滤
在 Filter 输入框中依次尝试:
png:只保留文本中包含png的资源。本演示中匹配的是 PNG 图片。/.*\.[cj]s+$/:使用正则表达式匹配以点号、c或j、一个或多个s结尾的名称,例如 CSS、JS 文件。-main.css:排除匹配main.css的资源,其他匹配该模式的文件也会被排除。domain:raw.githubusercontent.com:只保留 URL 域名符合此条件的资源。
更多可用属性见 按属性过滤请求。完成后,清空 Filter 输入框。
按资源类型过滤
点击 CSS,隐藏其他类型的资源。如果还想同时查看脚本,按住 Control,macOS 上按住 Command,再点击 JS。点击 All,移除类型过滤,重新查看全部资源。
其他过滤方法见 过滤请求。
屏蔽请求
某些资源不可用时,页面会完全失效,还是仍有部分功能?可以通过屏蔽请求观察:
- 按
Control+Shift+P,macOS 上按Command+Shift+P,打开 Command Menu。 - 输入
block,选择 Show Request Blocking,按 Enter。 - 点击 Add Pattern。
- 输入
main.css。 - 点击 Add。
- 重新加载页面。主样式表被屏蔽后,页面样式会变乱。网络日志里的
main.css行显示为红色,表示资源被屏蔽。 - 取消 Enable request blocking 勾选。
更多检查网络活动的功能见 Network 面板参考。
来源与许可
作者:Kayce Basques。原文:Inspect network activity,对照 官方简体中文版本。页面最后更新时间为 2024-10-14 UTC,核对日期 2026-10-03。本稿完整整理全部操作章节,调整中文表达和表格,保留界面英文名称、示例字符串与快捷键。
原文包含真实 DevTools 截图和视频,均可从原文查看;本稿未伪造这些技术截图。当前离线包只有独立绘制的概念封面,发布前仍需补齐原图的下载、许可记录和插图位置。本文操作未在当前机器实测。
页面声明:除另有说明外,正文采用 Creative Commons Attribution 4.0,代码示例采用 Apache License 2.0。详见 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。











暂无评论内容