Chrome расширение - очистить любой URL, игнорируя изолированную программную среду и политику безопасности контента? - PullRequest
0 голосов
/ 24 апреля 2020

Я бы хотел создать расширение chrome, которое может отправлять запросы на любую веб-страницу, к которой имеет доступ пользователь, даже на страницы, защищенные Политиками защиты контента , предпочтительно в фоновом режиме ( без необходимости открывать страницу в браузере).

Так, например, я хотел бы иметь возможность:

  • запрашивать информацию со страницы, на которую пользователь может войти в Gmail
  • запрашивать информацию с RSS / других страниц
  • запрашивать информацию со страниц на Facebook

Возможно ли это? Кажется, что у меня может быть расширение, открывающее новое окно и вкладку для каждой страницы, с которой я хочу получить информацию. Это единственный способ, которым это может работать? Я бы предпочел, чтобы это происходило за кулисами, без необходимости открывать окно.

1 Ответ

1 голос
/ 24 апреля 2020

CSP не является проблемой, если ваш манифест. json добавляет URL-адреса, которые вы хотите обработать, в permissions, например, "*://*/" или "<all_urls>" разрешит доступ к любому сайту.

Решение, однако, зависит от того, как эта страница построена. Если ответ сервера содержит всю необходимую вам информацию, вы можете просто сделать прямой запрос через XMLHttpRequest или fetch ( больше информации ) в фоновом скрипте, проанализировать его с помощью DOMParser и извлечь данные. В противном случае вы можете попробовать запустить его в iframe (вам нужно будет раздеть X-Frame-Options ) или на неактивной / закрепленной вкладке и использовать скрипт содержимого , чтобы извлечь данные. Для доступа к JavaScript переменным страницы вам нужно добавить скрипт DOM, чтобы его код работал в контексте страницы .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...