You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
47 lines
1.0 KiB
47 lines
1.0 KiB
(function() {
|
|
var c = {
|
|
init: function() {
|
|
c.log('init');
|
|
|
|
c.getResponseHeaders();
|
|
},
|
|
|
|
log: function(message) {
|
|
chrome.extension.sendRequest({ id: 'log', message: '[ content.js ] ' + message });
|
|
},
|
|
|
|
getResponseHeaders: function() {
|
|
var xhr = new XMLHttpRequest();
|
|
|
|
xhr.open('GET', window.location, true);
|
|
|
|
xhr.onreadystatechange = function() {
|
|
if ( xhr.readyState === 4 && xhr.status ) {
|
|
var headers = xhr.getAllResponseHeaders().split("\n");
|
|
|
|
if ( headers.length > 0 && headers[0] != '' ) {
|
|
c.log('responseHeaders: ' + xhr.getAllResponseHeaders());
|
|
|
|
var responseHeaders = {};
|
|
|
|
headers.forEach(function(line) {
|
|
if ( line ) {
|
|
name = line.substring(0, line.indexOf(': ')).toLowerCase();
|
|
value = line.substring(line.indexOf(': ') + 2, line.length - 1);
|
|
|
|
responseHeaders[name] = value;
|
|
}
|
|
});
|
|
|
|
chrome.extension.sendRequest({ id: 'analyze', subject: { headers: responseHeaders } });
|
|
}
|
|
}
|
|
}
|
|
|
|
xhr.send();
|
|
}
|
|
}
|
|
|
|
c.init();
|
|
})();
|