Как авторизовать прокси при запросе к сайту [Расширение Manifest 3]
Пишу расширение для Google Chrome использую Manifest 3 версии, код приложу ниже, проблема в том, что подобным способом в Manifest 2 прокси авторизовывались и при запросе к сайту по типу fetch, а в 3ей версии авторизирует только когда зайдешь на сайт сам, при запросе выдает 407 ошибку, что прокси не авторизировано, есть ли способ авторизовывать при отправке запроса?
var proxy = {
cache: [],
temp: [],
get: async() => {
var proxyObj = await database.get("proxy_list");
if (proxy.temp.length == 0) {
proxyObj.forEach((i) => proxy.temp.push(i));
return proxy.temp.shift();
}
return proxy.temp.shift();
},
set: async function() {
proxy.cache = await proxy.get();
var proxObj = {
type: "http",
host: proxy.cache.ip,
port: proxy.cache.port,
};
var config = {
mode: "fixed_servers",
rules: {
singleProxy: {
scheme: proxObj.type,
host: proxObj.host,
port: parseInt(proxObj.port),
},
},
};
if (proxy.cache.login != null && proxy.cache.password != null) {
proxy.auth(proxy.cache.login, proxy.cache.password);
}
try {
chrome.proxy.settings.set({
value: config,
scope: "regular"
},
function() {}
);
} catch (error) {
chrome.proxy.settings.set({
value: config,
scope: "regular"
},
function() {}
);
}
proxy.cache = [];
},
auth: (login, password) => {
chrome.webRequest.onAuthRequired.addListener(
(details, callback) => {
const authCredentials = {
username: login,
password: password
};
callback({
authCredentials
});
}, {
urls: ["<all_urls>"]
}, ["asyncBlocking"]
);
},
};