Próbuję utworzyć rozszerzenie Chrome, aby pomóc mi zrozumieć interfejs API Chrome webRequest, replikując to, co zostało zrobione z this answer, ale bez eksperymentalnej części przestrzeni nazw, która nie jest już potrzebna, ponieważ webRequest jest teraz w bagażniku Chrome.Proste przekazywanie za pomocą Google Chrome webRequest API
W mojej stronie tło mam kod:
<!DOCTYPE html>
<html>
<head>
<script>
function interceptRequest(request) {
return { redirectUrl: 'http://www.yahoo.com' }
}
chrome.webRequest.onBeforeRequest.addListener(interceptRequest, { urls: ['*://*.google.com/*'] }, ['blocking']);
</script>
</head><body></body>
</html>
W moim pliku manifestu mam:
{
"name": "My Extension",
"version": "0.1",
"background_page": "background.html",
"permissions" : [
"webRequest",
"webRequestBlocking",
"*://*/*"
]
}
podstawie wcześniej zadawane pytanie, powinien zostać przekazany do http://www.yahoo.com kiedy dostęp https://www.google.com i moje rozszerzenie jest ładowane, jednak https://www.google.com ładuje bez żadnego efektu przekierowania. Co muszę zrobić, aby po prostu przekazać użytkownika z jednego identyfikatora URI do drugiego za pomocą interfejsu API webRequest w przeglądarce Chrome?
To dziwne. Jedyne, co mogę wymyślić, to upewnić się, że nie ładujesz żadnych synchronicznych XHR ani żadnych tagów skryptów z zasobów online na stronie w tle z dokumentów Chrome. – gengkev