Я создаю расширение приложения Safari, которое будет перенаправлять определенные запросы через локальный прокси.
Например, https://tracking-script.com/track/user/123
необходимо перенаправить http://localhost:9000
Единственная проблема, которую я делаю не знаю, какие домены плохие во время применения bootstrap. Мой пакет включает в себя: 1. Приложение MacOS для размещения расширения Safari и блокировщика контента 2. Расширение Safari, где я могу выполнять определенные действия 3. Блокировщик содержимого, который в основном дает правила для Safari во время приложения bootstrap https://www.infoq.com/articles/safari-content-blockers/
Можно ли динамически проверять запрос и перенаправлять его через заданный порт?
В моей локальной сети есть устройство, которое предоставляет мне эти правила. Поэтому, если страница запрашивает https://tracking-script.com/track/user/123
, я сначала хочу проконсультироваться с моим устройством, работающим на localhost. Если в ответе устройства указано this domain is bad
, я хочу, чтобы мой блокировщик контента перенаправил этот запрос на http://localhost:9000
вместо перехода на исходный URL.
Возможно ли это даже в Safari / MacOS? Я могу сделать это в расширениях chrome и firefox, подключив ловушку onBeforeRequest. Я отправляю запрос на свое устройство, и если устройство сообщает, что домен неисправен, я возвращаю {redirect_url: 'http://localhost:9000'}
, и браузер перенаправляет этот запрос.