Блокировка веб-сайтов в веб-приложении с использованием JavaScript - PullRequest
0 голосов
/ 13 сентября 2018

В настоящее время я разрабатываю веб-приложение, которое позволяет пользователям добавлять список веб-сайтов, которые они хотят заблокировать, т. Е. Не позволяет им получать доступ к веб-сайту из своего браузера.

В идеале я хочу иметь возможность блокировать веб-сайты в каждом браузере, но это сложно, поэтому я ограничил свои исследования до Chrome на данный момент. Я наткнулся на chrome.webRequest api , который выглядит многообещающим, но в нем говорится, что он предназначен для расширений chrome, и не уверен, будет ли он работать для моего веб-приложения.

Может ли кто-нибудь указать мне правильное направление для блокировки веб-сайтов в веб-приложении, в идеале с использованием JavaScript. Любая помощь очень ценится!

РЕДАКТИРОВАТЬ :

1) Я забыл упомянуть, что я использую firebase для своего бэкэнда.

2) Люди говорили, что я не могу блокировать веб-сайты вне области веб-приложений, если бы я вместо этого использовал электрон, чтобы сделать веб-приложение настольным приложением, было бы тогда возможно?

1 Ответ

0 голосов
/ 13 сентября 2018

Во-первых, у вас есть база данных, содержащая URL заблокированных сайтов.URL-адреса изменяются с помощью вашего веб-приложения.Это одна часть.Теперь ваша проблема заключается в том, как заставить браузер работать с вашей базой данных.

Единственный возможный способ поделиться заблокированными URL-адресами с браузером - через API.У вас должен быть API, который может взаимодействовать вне вашего веб-приложения.

Теперь браузеры, такие как chrome / firefox, дают пользователям возможность вносить изменения внутри и вне dom .Для chrome у вас есть расширение chrome, где Google предоставляет API, чтобы пользователи могли манипулировать действиями, выходящими за рамки обычных действий, таких как dom.Я могу привести пример, который тесно связан с вашей темой. Это действие, которое активируется до / после того, как пользователь вводит URL в поле поиска, и для этого мы используем следующий API из https://developer.chrome.com/extensions/webRequest

Ито же самое для Firefox.

...