我想向控制台写入给定页面的大小。请注意,如果页面被压缩,我想知道gzip的尺寸和未压缩的尺寸。我也希望能够为任何Ajax请求做到这一点。访问请求的页面大小 - Chrome扩展程序
如果有没有这样做的方式没有插件,那将是伟大的。
我想向控制台写入给定页面的大小。请注意,如果页面被压缩,我想知道gzip的尺寸和未压缩的尺寸。我也希望能够为任何Ajax请求做到这一点。访问请求的页面大小 - Chrome扩展程序
如果有没有这样做的方式没有插件,那将是伟大的。
var req = new XMLHttpRequest();
req.open('GET', document.location, false);
req.send(null);
var headers = req.getAllResponseHeaders().toLowerCase();
var encoding = (headers.match(/Content-encoding\: (\w*)/i) || []).pop();
var unpacked_size = req.responseText.length;
var packed_size = -1;
if (['gzip','deflate','lzh','sdch'].indexOf(encoding) !== -1) {
packed_size = parseInt((headers.match(/content-length\: (\d*)/i) || []).pop());
}
var result = {
encoding: encoding,
unpacked_size: unpacked_size,
packed_size: packed_size,
}
这是通过ajax请求完成的,我不想让这个额外的请求。 – 2013-04-24 13:42:11
没有办法从页面自己的javascript范围访问当前页面的页眉数据。而你的问题没有说明这是一个要求。 – 2013-04-24 15:05:09
问题标题为“访问请求的页面大小 - Chrome扩展程序”。它需要是一个Chrome扩展afaik。 – 2013-04-24 15:54:46
尝试['chrome.devtools.network'](https://developer.chrome.com/extensions/devtools.network.html)。 – 2013-04-24 14:31:27
我看着这个,但我不确定我能否访问HAR数据,除非他们在网络选项卡上打开devtools?至少这就是我的理解 - “chrome.devtools。* API模块仅适用于在”开发人员工具“窗口中加载的页面。” http://stackoverflow.com/questions/12689239/why-is-chrome-devtools-network-undefined。 HAR数据正是我想要的,但我需要能够在没有开放devtools的情况下完成。我只想在用户页面上显示页面大小。 – 2013-04-24 15:59:14
您需要创建一个[devtools](https://developer.chrome.com/extensions/devtools.html)扩展名。在你的问题中,你说信息必须记录到控制台,所以要求devtools被打开应该不成问题。 – 2013-04-24 16:01:30