Chrome开发人员工具Network请求之HAR文件

本文详细介绍如何在Chrome开发者工具中导出网络请求为HAR格式,并解析HAR文件结构,涵盖了请求与响应详细信息,适用于HTTP分析与性能优化。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

为什么写了本篇博客:

(1)Chrome浏览器开发者工具介绍;(包括,Network面板介绍,XHR等等)中,遇到了Network中的【可以把请求导出数据为HAR格式】;本篇博客就是详细介绍HAR。

本篇博客转载自:

(1)HAR文件详细解析;作者首页地址是【https://horve.github.io/】 

(2)如何使用浏览器抓包,如何把请求保存为har文件

说明:

(1)对本篇博客的内容并没有完全明白,目前来说,有点粗略的认识就可以了;以后有了深入理解,随时来补充啦。

 

目录

(1)导出数据为HAR格式,导入HAR文件

(2)HAR文件详细解析


(1)导出数据为HAR格式,导入HAR文件

导出方式1:

导出方式2:

导入方式:


(2)HAR文件详细解析

HAR(HTTP档案规范),是一个用来储存HTTP请求/响应信息的通用文件格式,基于JSON。这种格式的数据可以使HTTP监测工具以一种通用的格式导出所收集的数据,这些数据可以被其他支持HAR的HTTP分析工具(包括Firebug、httpwatch、Fiddler等)所使用,来分析网站的性能瓶颈。

目前HAR规范最新版本为HAR 1.2。HAR文件必须是UTF-8编码,有无BOM无所谓。如下是一个HAR文件的详细介绍。

{
    "log": {
        "version": "1.2",
        "creator": {
            "name": "shun.zheng",
            "version": "1.1.8"
        },
        "pages": [
            {
                "startedDateTime": "2015-09-06T10:02:41.663Z", // 页面开始加载的时间(格式:ISO 8601)
                "id": "http://www.ihorve.com/", // 页面唯一标示符,即页面url
                "title": "Horve后花园", // 页面标题
                "pageTimings": { // 关于页面加载时间的详细信息
                    "onContentLoad": 1720, // 可选,页面开始加载到页面内容加载完毕之间的毫秒数
                    "onLoad": 2500, // 可选,页面开始加载到页面onload之间的毫秒数
                    "comment": "" // 可选,由用户或应用程序提供的注释
                }
            }
        ],
        "entries": [ // 包含全部请求的数组,数组的每一项是一条请求的数据构成的对象,根据startedDateTime排序
            {
                "startedDateTime": "2015-09-06T10:02:41.645Z", // 请求发出的时间(ISO 8601)
                "time": 1221, // 该条请求花费的总的毫秒数
                "request": { // 请求的详细情况
                    "method": "GET", // 请求方式
                    "url": "http://www.ihorve.com/", // 请求的url
                    "httpVersion": "HTTP/1.1", // http协议版本号
                    "cookies": [], // cookie对象列表
                    "headers": [ // header信息
                        {
                            "name": "User-Agent",
                            "value": "Mozilla/5.0 (Macintosh; Intel Mac OS X) AppleWebKit/534.34 (KHTML, like Gecko) PhantomJS/1.9.8 Safari/534.34"
                        },
                        {
                            "name": "Accept",
                            "value": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
                        }
                    ],
                    "queryString": [], // 查询参数对象的列表
                    "headersSize": -1, // 从HTTP请求消息的开始,直到(且包括)的主体之前的双CRLF的总字节数,不可用设置为-1
                    "bodySize": -1 // 消息体的粽子节数,不可用设置为-1
                },
                "response": { // 响应的详细情况
                    "status": 200, // 状态码
                    "statusText": "OK",
                    "httpVersion": "HTTP/1.1",
                    "cookies": [], // cookie对象列表
                    "headers": [ // 响应头信息列表
                        {
                            "name": "Server",
                            "value": "nginx"
                        },
                        {
                            "name": "Date",
                            "value": "Sun, 06 Sep 2015 09:59:22 GMT"
                        },
                        {
                            "name": "Content-Type",
                            "value": "text/html; charset=UTF-8"
                        },
                        {
                            "name": "Transfer-Encoding",
                            "value": "chunked"
                        },
                        {
                            "name": "Connection",
                            "value": "keep-alive"
                        },
                        {
                            "name": "Keep-Alive",
                            "value": "timeout=60"
                        },
                        {
                            "name": "X-Pingback",
                            "value": "http://www.ihorve.com/xmlrpc.php"
                        },
                        {
                            "name": "Content-Encoding",
                            "value": "gzip"
                        }
                    ],
                    "redirectURL": "", // 从响应头位置重定向目标URL
                    "headersSize": -1, // 从HTTP响应消息的开始,直到(且包括)的主体之前的双CRLF的总字节数,不可用设置为-1
                    "bodySize": 65047, // 响应体的字节数
                    "content": { // 响应体的详细信息
                        "size": 65047, // 响应体的字节数
                        "mimeType": "text/html; charset=UTF-8" // 响应体的mimeType
                    }
                },
                "cache": { // 请求从浏览器缓存的信息
                    "beforeRequest": {}, // 可选,请求前缓存条目的状态
                    "afterRequest": {}, // 可选,请求后缓存条目的状态
                    "comment": ""
                },
                "timings": { // 发送请求到收到响应各阶段的时间,单位均为毫秒
                    "blocked": 0, // 可选,等待网络连接的时间
                    "dns": -1, // 可选,dns解析时间,不可用设置为-1
                    "connect": -1, // 可选,创建TCP连接的时间,不可用设置为-1
                    "send": 0, // 发送HTTP请求到服务器的时间
                    "wait": 1126, // 等待响应的时间
                    "receive": 95, // 从服务器接收或从缓存读取的时间
                    "ssl": -1 // 可选,SSL/TLS协商需要的时间,不可用设置为-1
                },
                "pageref": "http://www.ihorve.com/" // 可选,唯一,参照的父页面,如果应用不支持页面分组,可忽略此项配置
            }
        ]
    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值