Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

webRequest.StreamFilter.status

Ein String, der den aktuellen Status der Anfrage beschreibt. Er wird einen der folgenden Werte annehmen:

"uninitialized"

Der Filter ist nicht vollständig initialisiert. Es dürfen keine Filterfunktionen aufgerufen werden.

"transferringdata"

Der zugrunde liegende Kanal überträgt derzeit Daten, die in einem oder mehreren ondata-Ereignissen zur Erweiterung geleitet werden. Die Erweiterung kann Filterfunktionen wie write(), close() oder disconnect() aufrufen.

"finishedtransferringdata"

Der zugrunde liegende Kanal hat die Datenübertragung abgeschlossen. In diesem Zustand kann die Erweiterung weiterhin Antwortdaten mit der write()-Funktion des Filters schreiben.

"suspended"

Die Datenübertragung ist derzeit angehalten. In diesem Zustand kann die Erweiterung die Anfrage fortsetzen, indem sie die resume()-Funktion des Filters aufruft, und kann Antwortdaten mit der write()-Funktion des Filters schreiben.

"closed"

Die Erweiterung hat die Anfrage geschlossen, indem sie die close()-Funktion des Filters aufgerufen hat. Der Filter wird keine weiteren Ereignisse auslösen, und die Erweiterung darf keine Filterfunktionen aufrufen.

"disconnected"

Die Erweiterung hat den Filter von der Anfrage getrennt, indem sie die disconnect()-Funktion des Filters aufgerufen hat. Alle weiteren Daten werden direkt übermittelt, ohne durch den Filter zu gehen. Der Filter wird keine weiteren Ereignisse auslösen, und die Erweiterung darf keine Filterfunktionen aufrufen.

"failed"

Ein Fehler ist aufgetreten und der Filter wurde von der Anfrage getrennt. Die Erweiterung kann eine Fehlermeldung in error finden und darf keine Filterfunktionen aufrufen.

Beispiele

js
function listener(details) {
  let filter = browser.webRequest.filterResponseData(details.requestId);
  console.log(filter.status); // uninitialized

  filter.onstart = (event) => {
    console.log(filter.status); // transferringdata
  };

  filter.ondata = (event) => {
    console.log(filter.status); // transferringdata
    // pass through the response data
    filter.write(event.data);
  };

  filter.onstop = (event) => {
    console.log(filter.status); // finishedtransferringdata
    filter.disconnect();
    console.log(filter.status); // disconnected
  };
}

browser.webRequest.onBeforeRequest.addListener(
  listener,
  { urls: ["https://example.com/*"], types: ["main_frame"] },
  ["blocking"],
);

Browser-Kompatibilität