// Записываем параметры прокси в глобальную переменную:
window.proxy_auth = {
'address': 'Адрес_прокси:Порт_прокси',
'proxy_user': 'Логин от прокси',
'proxy_password': 'Пароль от прокси'
};
// Устсновка прокси через назначение PAC-скрипта:
chrome.proxy.settings.set(
{
value: {
mode: 'pac_script',
pacScript: {
data: 'function FindProxyForURL(url, host) { return "PROXY '+proxy_auth.addres+'"; }'
}
},
scope: 'regular'
},
function() {
console.log('Прокси '+proxy_auth.addres+' установлен');
}
);
// Автоматическая авторизация для установленного прокси:
chrome.webRequest.onAuthRequired.addListener(
function(info, callback) {
if (info.isProxy && typeof window.proxy_auth !== 'undefined') {
callback({
authCredentials: {
username: window.proxy_auth.proxy_user,
password: window.proxy_auth.proxy_password
}
});
}
else {
callback();
}
},
{ urls: [ '<all_urls>' ] },
[ 'asyncBlocking' ]
);