2013-06-25 5 views
8

Я работаю над расширением Chrome. Я хотел бы изменить некоторое содержимое, когда происходит загрузка первой страницы. Интересно, если я использую метод getContent() в chrome.devtools.network.onRequestFinished.addListener, как я могу изменить содержимое после его возврата из метода?Изменить тело ответа HTTP-запросов с расширением Chrome

Этот метод предназначен только для наблюдения за сетью/дорожным движением? Могу ли я изменить тело ответа?

+1

Я не полностью понимаю ваш вопрос. Вы хотите изменить информацию на веб-странице? Или на простые данные, которые вы получаете от HTTP-запроса? – John

+0

когда-нибудь это понял? – K2xL

ответ

-1

Да, вы просто должны использовать WebRequest API, вы получаете полный контроль всех запросов, сделанных и может изменить до и после, вот полная документация:

Chrome Extensions WebRequest API

(Один нюанс, вы пользователь должен предоставить разрешение при установке приложения)

Надеюсь, что это поможет, если вы ищете более подробную информацию, просто ответьте, и я могу помочь, но документация неплохо расскажет вам, как настроить правильную обработку событий:)

+0

Это неправда, вы можете модифицировать множество тонких, но тело ответа. –

+0

Мой ответ 3 года и был примечанием для экспериментального API, очевидно, что Chrome сделал некоторый прогресс и изменения с тех пор. Спасибо всем, кто голосовал за это, потому что API был изменен с тех пор, как я опубликовал этот ответ. Престижность. – joseeight

+1

Кроме того, поскольку люди все еще интересуются этим, теперь вы можете использовать сервис-работников для изменения запросов: http://www.html5rocks.com/en/tutorials/service-worker/introduction/ - Но это немного более ограничивает, чем что API WebRequest использовал, чтобы позволить много лет назад. – joseeight

1

Это никогда не было возможным.

Смотрите эту ошибку в проекте Chromium (с ноября 2011 г.):

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

Основываясь на некоторых обсуждениях в DB Chromium, я предполагаю, что изменение содержимого существующего запроса никогда не будет разрешено по соображениям безопасности, но чтение ответа и перенаправления может быть разрешено (когда-нибудь, когда все проблемы блокировки разрешены).