我想向控制檯寫入給定頁面的大小。請注意,如果頁面被壓縮,我想知道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