Может ли кто-нибудь взглянуть на этот код для меня, выпадающее меню, кажется, не работает и, следовательно, не переписывает userragent. [источник: https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/webRequest/onBeforeSendHeaders] (прокрутить вниз)
фон. js
"use strict";
/*
Set UA string to Opera 12
*/
var ua = "Opera/9.80 (X11; Linux i686; Ubuntu/14.10) Presto/2.12.388 Version/12.16";
/*
Rewrite the User-Agent header to "ua".
*/
function rewriteUserAgentHeaderAsync(e) {
var asyncRewrite = new Promise((resolve, reject) => {
window.setTimeout(() => {
for (var header of e.requestHeaders) {
if (header.name.toLowerCase() === "user-agent") {
header.value = ua;
}
}
resolve({requestHeaders: e.requestHeaders});
}, 2000);
});
return asyncRewrite;
}
/*
Add rewriteUserAgentHeader as a listener to onBeforeSendHeaders,
only for the target page.
Make it "blocking" so we can modify the headers.
*/
browser.webRequest.onBeforeSendHeaders.addListener(
rewriteUserAgentHeaderAsync,
{urls: ["<all_urls>"]},
["blocking", "requestHeaders"]
);
манифест . json
{
"description": "Adds browser action icon to toolbar to choose user agent string from popup menu. See https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Examples#user-agent-rewriter",
"manifest_version": 2,
"name": "user-agent-rewriter",
"version": "1.0",
"homepage_url": "https://github.com/mdn/webextensions-examples/tree/master/user-agent-rewriter",
"icons": {
"48": "icons/person-48.png"
},
"background": {
"scripts": ["background.js"]
},
"browser_action": {
"default_icon": "icons/person-32.png",
"default_title": "Choose a user agent",
"default_popup": "popup/choose_ua.html"
}
}
Спасибо