proxy

Verwenden Sie die proxy-API, um Webanfragen zu proxieren. Sie können den proxy.onRequest-Ereignislistener verwenden, um Webanfragen abzufangen und ein Objekt zurückzugeben, das beschreibt, ob und wie sie zu proxieren sind.

Der Vorteil des Ansatzes mit proxy.onRequest besteht darin, dass der Code, der Ihre Proxy-Richtlinie implementiert, im Hintergrundskript Ihrer Erweiterung ausgeführt wird. So hat er vollen Zugriff auf die WebExtension-APIs, die Ihrer Erweiterung zur Verfügung stehen (einschließlich beispielsweise Zugriff auf den storage-API Ihrer Erweiterung und Netzwerk-APIs wie dns).

Abgesehen von dieser API können Erweiterungen auch die Eigenschaft browserSettings.proxyConfig verwenden, um globale Proxy-Einstellungen zu konfigurieren.

Hinweis: Chrome, Edge und Opera haben eine Erweiterungs-API, die ebenfalls "proxy" genannt wird, die funktional dieser API ähnlich ist, da Erweiterungen damit eine Proxy-Richtlinie implementieren können. Das Design der Chrome-API ist jedoch komplett anders als diese API. Da diese API mit der Chrome proxy API inkompatibel ist, ist sie nur über den browser-Namensraum verfügbar.

Um diese API zu nutzen, benötigen Sie die "proxy"-Berechtigung. Weiterhin benötigen Sie auch Host-Berechtigung für die URLs der abgefangenen Anfragen, wenn Sie Anfragen abfangen möchten.

Die "proxy"-Berechtigung erfordert, dass "strict_min_version" auf "91.1.0" oder höher gesetzt ist. Um diese Berechtigung zu verwenden, fügen Sie den Schlüssel "browser_specific_settings" zu Ihrer manifest.json hinzu oder aktualisieren Sie ihn, um eine minimale Firefox-Version anzugeben. Weitere Informationen finden Sie unter Securing the proxy API for Firefox add-ons.

Hinweis: Der Browser kann spekulative Verbindungen herstellen, bei denen er feststellt, dass eine Anfrage an eine URI möglicherweise bald kommt. Diese Art von Verbindung liefert keine gültigen Tab-Informationen, sodass Anfragedetails wie tabId, frameId, parentFrameId usw. ungenau sind. Diese Verbindungen haben einen webRequest.ResourceType-Wert von speculative.

Typen

proxy.ProxyInfo

Beschreibt einen Proxy.

proxy.RequestDetails

Enthält Informationen über eine Webanfrage, die der Browser ausführen möchte.

Eigenschaften

proxy.settings

Proxy-Einstellungen abrufen und setzen.

Ereignisse

proxy.onError

Wird ausgelöst, wenn das System einen Fehler beim Ausführen des PAC-Skripts oder des onRequest-Listeners feststellt.

proxy.onRequest

Wird ausgelöst, wenn eine Webanfrage gestellt werden soll, wodurch die Erweiterung die Möglichkeit erhält, sie zu proxieren.

Beispielerweiterungen

Browser-Kompatibilität

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Firefox for Android
Safari on iOS
proxy
ProxyInfo
ProxyInfo.proxyAuthorizationHeader
RequestDetails
RequestDetails.cookieStoreId
RequestDetails.documentUrl
RequestDetails.frameId
RequestDetails.fromCache
RequestDetails.incognito
RequestDetails.method
RequestDetails.originUrl
RequestDetails.parentFrameId
RequestDetails.requestHeaders
RequestDetails.requestId
RequestDetails.tabId
RequestDetails.thirdParty
RequestDetails.timeStamp
RequestDetails.type
RequestDetails.url
onError
onRequest
settings

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
No support
No support
See implementation notes.
Uses a non-standard name.
Has more compatibility info.