一、chromejson概述
Chrome浏览器的开发者工具(DevTools)支持将网络面板上的数据转换为可重用的HAR格式。在接下来的几年里,HAR成为一个通用的格式,不仅浏览器,还有其他工具也支持它。但是,在某些情况下,HAR格式更为详细,需要更轻量级的格式。因此,chromejson格式应运而生。
chromejson在设计上遵循了可读性和可扩展性的原则。它可以轻松地转化为HAR格式。除此之外,chromejson还支持更多的数据类型,如二进制数据、ASCII等。
二、chromejson格式结构
chromejson包含多个对象,其结构如下:
{ "log": { "version": string, "creator": { "name": string, "version": string }, "entries": [object] } }
其中,关键字“log”代表了所有的网络数据。版本和创建者内容描述了该文件的版本和生成工具的名称和版本。entries关键字代表了一个数组,其中包含了所有的请求和响应的详细信息。这些对象的结构如下:
{ "startedDateTime": timestamp, "time": number, "request": { ... }, "response": { ... }, "cache": { ... }, "timings": { ... } }
其中,startedDateTime表示了请求的开始时间,time代表了请求的响应时间(单位为毫秒)。缓存和timing描述了请求和响应的其他详细信息。
三、chromejson格式化工具
chromejson格式化工具是一款轻量级的工具,用于将chromejson数据转换为更具可读性的格式。该工具支持本地和在线两种使用方式。
下面是一个简单的chromejson格式化函数:
function formatJSON(json) { return JSON.stringify(json, null, 4); }
这个函数将chromejson数据作为输入,同时返回格式化后的json字符串。
四、chromejson格式化的优点
chromejson的格式化有以下优点:
1. 可读性好
chromejson格式化后的数据更加容易被人类理解。每个请求和响应都被分为了多个字段,并且每个字段都很容易看懂。
2. 可扩展性强
chromejson的格式化可以轻松地支持更多的数据类型。当需要存储某些类型的数据时,只需要向chromejson中添加相应的字段即可。
3. 易于解析
chromejson格式化后的数据可以轻松地被其他程序解析。我们可以使用JavaScript或其他编程语言来解析chromejson数据。
五、chromejson格式化示例
{ "log": { "version": "1.1", "creator": { "name": "Chrome DevTools", "version": "58.0.3029.110" }, "entries": [ { "startedDateTime": "2017-04-26T11:03:01.701Z", "time": 56.82311058044434, "request": { "method": "GET", "url": "https://www.example.com", "httpVersion": "HTTP/1.1", "headers": [ { "name": "Accept", "value": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8" }, { "name": "Accept-Encoding", "value": "gzip, deflate, sdch, br" }, { "name": "Accept-Language", "value": "en-US,en;q=0.8" } ], "queryString": [], "cookies": [], "headersSize": 255, "bodySize": 0 }, "response": { "status": 200, "statusText": "OK", "httpVersion": "HTTP/1.1", "headers": [ { "name": "Content-Type", "value": "text/html; charset=UTF-8" }, { "name": "Server", "value": "cloudflare-nginx" } ], "cookies": [], "content": { "size": 6123, "mimeType": "text/html" }, "redirectURL": "", "headersSize": 244, "bodySize": 6123 }, "cache": {}, "timings": { "dns": -1, "connect": -1, "ssl": -1, "send": 0.2200000000000001, "wait": 56.440000000000005, "receive": 0.1631105804443361 } } ] } }
六、结论
chromejson格式化是一种可靠的数据格式,它可以轻松地将网络请求和响应内容转换为可读性强的格式。这种格式的优点在于它的可扩展性、可读性、易于解析。对于开发人员来说,chromejson格式化工具是一款非常实用和强大的工具。