I'm trying to grab the current tab's icon using Chrome's API and send it via a request:
function sendRequest(update, tab){
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function () {
if (this.readyState == 4 && this.status == 200) {
console.log(this.responseText);
}
};
icon = "";
url = "";
if (tab.status == 'complete')
icon = tab.favIconUrl;
url = tab.url;
formD = new FormData();
formD.append("url", url);
formD.append("ic_link", icon);
xhttp.open("POST", "Python_server####/send_url");
xhttp.send(formD);
}
However, the favicon URL is always either blank or undefined. I also tried accessing the link directly with document.getElementById("shortcut icon").href but I'm not sure if that's legal. Any ideas?
tab.favIconUrl property is only available if extension has tabs or activeTab permission. Also it is empty string "" if the tab is in loading state