%20%D1%81%20%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E%20%D1%80%D0%B0%D1%81%D1%88%D0%B8%D1%80%D0%B5%D0%BD%D0%B8%D1%8F%20Chrome%3F.png)
Я хочу добавить параметр к URL-адресу Twitter (удалив тот, который там уже есть)
Используя этот URL в качестве примера, https://twitter.com/RequestlyIO/status/1272478326838292488 ему необходимо будет обнаружить URL, содержащий в имени «twitter» и в пути «status».
Если URL соответствует обоим параметрам, то в конец следует добавить параметр «?s=21».
У меня естьПо запросу Расширение Chromeустановлен в Chrome и использую его для добавления параметра.
Это необходимо для того, чтобы другая программа, которую я использую, работала с ним корректно. (Буфер)
Это отлично работает в Firefox, но я пробовал это в трех разных версиях Chrome, и это не сработало.
Есть идеи?
решение1
Расширения Chrome плохо работают с Service Workers. Любой запрос, сделанный Service Workers, не виден внутри расширений Chrome и, следовательно, не может быть изменен (или заблокирован).
Например - Попробуйте это
Создать правило перенаправления
Request URL
Contains
twitter.com
Destination
https://stackoverflow.com
Сохраните его и попробуйте открыть twitter.com. Вы увидите, что правило не будет выполнять перенаправление, поскольку Twitter зарегистрировал ServiceWorker, который отвечает за предоставление ответа (либо из кэша диска), либо из сети.
Взгляните на этот скриншот.
Чтобы обойти это, вы можете использовать правило вставки скрипта, в котором вы можете написать небольшой пользовательский скрипт, который будет выполнять перенаправление при совпадении вашего условия URL.
Вот пример
Вот код, который вы можете использовать
const currentURL = window.location.href.toLowerCase();
// match your condition here
// Also check the param is not already added to avoid infinite redirects
if (currentURL.indexOf('status') > -1 && currentURL.indexOf('requestlyio') > -1 && currentURL.indexOf('s=21') === -1) {
// Do the redirect here
window.location.href = currentURL + '?s=21'
}
Вот ссылка на вставку скрипта SharedList
https://app.requestly.io/rules/#sharedList/1595750670410-add-parameter-to-twitter-status