Я пытаюсь создать расширение Chrome, которое добавит параметр в конец URL-адреса, если URL-адрес соответствует данному шаблону (*://*.mydomain.com/s/*
). Ниже приведен файл сценария манифеста и фона, который у меня есть, но я не могу заставить его работать. Что я делаю не так?Расширение Chrome для перенаправления на URL с параметром
manifest.json:
{
"manifest_version": 2,
"name": "Search Grid View",
"version": "0.1",
"description": "Changes MyDomain.com search to grid view by default",
"background": {
"scripts": ["background.js"]
},
"permissions": [
"tabs",
"webRequest",
"*://*.mydomain.com/s/*",
"webRequestBlocking"
]
}
background.js:
chrome.webRequest.onBeforeRequest.addListener(
function(details) {
var currentUrl = tabs[0].url;
var newUrl = currentUrl + "&style=gridview"
return { redirectUrl: newUrl};
},
{
urls: [
'*://*.mydomain.com/s/*'
],
types: ['main_frame']
},
['blocking']);
Заранее спасибо за любые советы!
'browserAction' означает значок в адресной строки (омнибокс), см [АНИ документы] (https://developer.chrome.com/extensions/browserAction). В противном случае вам понадобится фоновый скрипт и [webRequest] (https://developer.chrome.com/extensions/webRequest) или [webNavigation] (https://developer.chrome.com/extensions/webNavigation) API. Уточните вопрос, пожалуйста. – wOxxOm
Попробуйте "lastFocusedWindow: true" вместо "currentWindow: true" – ak2ln
@wOxxOm Спасибо! Очень новичок в расширениях Chrome, поэтому я пытался взломать разные примеры, что явно не так хорошо работает. Я обновил указанный выше вопрос и переписал структуру для использования фоновой страницы с API webRequest. Это, как говорится, все еще не работает. Любая идея, что не так? – user994585