URL-Weiterleitung mit Chrome webRequest nach Antwort empfangen wird

Ich bin versucht, erstellen Sie eine Google Chrome-Erweiterung nutzt Chrome webRequest Modul zum durchführen einer Umleitung zu einer URL, erhalten aus einer anfänglich zugegriffen URL. Für diese würde ich gerne nutzen, nur Chrome webRequest-Funktionen (z.B., onBeforeSendHeaders, onHeadersReceived) und nicht einfach ein Aufruf von $.ajax() mit der erhaltenen URL. Die gewünschte Funktionalität ist:

  1. Benutzer gibt eine URL in die Adressleiste
  2. Ein Antrag gestellt wird und die Sekundär-URL extrahiert aus der HTTP-Antwort
  3. Die chrome.webRequest.onHeadersReceived - handler leitet den Benutzer auf dem sekundären URL mit dem redirectUrl Attribut der Sperrung Reaktion.

Mein Versuch, dies zu erreichen ist:

chrome.webRequest.onHeadersReceived.addListener(
 function(details){
  var secondaryURL = extractSecondaryURL(details);
  return {redirectUrl: secondaryURL}; //this doesn't work
 },
 {urls:["http://*/*", "https://*/*"]},
 ["blocking","responseHeaders"]
);

...aber die Seite wird nie weitergeleitet. Die webRequest-Dokumentation sagt, "Nur als eine Reaktion auf die onBeforeRequest Ereignis." über die redirectUrl - Attribut, das die wahrscheinlich Schuldigen.

Wie wird man führen diese Art der Weiterleitung empfangenen Daten aus dem Antwort-Header und der Chrom-webRequest-Modul?

redirectUrl im onHeadersReceived beantragt wurde, auf code.google.com/p/chromium/issues/detail?id=280464. Bitte Sterne die Frage!

InformationsquelleAutor Mat Kelly | 2013-06-04

Schreibe einen Kommentar