HTTP-Request-Header, zu deinen Bedingungen
Definiere eine Regel – Header-Name, Wert, URL-Muster – und Chrome wendet sie auf passende Anfragen an. Schalte einzelne Regeln beim Arbeiten an und aus, oder deaktiviere mit dem Hauptschalter alles auf einmal. Deine Regeln bleiben bestehen; es wird nichts gelöscht.
Erfordert Chrome oder einen Chromium-basierten Browser
Wie eine Regel tatsächlich aussieht
Drei Felder. Das ist das ganze Modell – kein Skripting, keine Konfigurationsdatei, kein Proxy, den du betreiben musst.
X-Debug-Mode: verbose — URL-Muster: https://staging.example.com/*
Authorization: Bearer eyJhbGciOi… — URL-Muster: https://api.example.com/v2/*
X-Feature-Flag: new-checkout — URL-Muster: https://*.example.com/*
Jede Zeile ist eine Regel. Der Schalter rechts deaktiviert nur diese eine Regel; der Hauptschalter im Popup deaktiviert alle Regeln auf einmal und lässt sie dabei unangetastet.
Was sie macht
- Header setzen oder überschreiben — Setze einen Header, der nicht da ist, oder ersetze einen, den der Browser sonst senden würde. Für eine Regel ist beides derselbe Vorgang.
- Treffer nach URL-Muster — Begrenze jede Regel genau auf die Origins und Pfade, die du willst, damit ein Header nur für Staging niemals in die Produktion gelangt.
- Schalter je Regel — Schalte eine Regel aus, um eine Vermutung zu prüfen, und wieder an. Kein Bearbeiten, kein Neutippen, keine auskommentierten Zeilen.
- Hauptschalter — Ein Bedienelement deaktiviert alle Regeln auf einmal – praktisch, kurz bevor du einen Fehler gegen einen sauberen Ausgangszustand reproduzierst. Deine Regeln werden nicht gelöscht.
- Regeln, die dir folgen — Regeln liegen im Sync-Speicher von Chrome, überstehen also einen Neustart und tauchen auf den anderen Rechnern auf, an denen du im selben Chrome-Profil angemeldet bist.
- Manifest V3 — Baut auf declarativeNetRequest auf, Chrome wendet die Regeln also selbst an. Die Erweiterung sitzt nicht in deinem Datenverkehr und liest keine Anfragen mit.
Über die Berechtigungen
Chrome warnt dich, dass diese Erweiterung „alle deine Daten auf allen Websites lesen und ändern“ kann. Diese Warnung entsteht aus den Berechtigungen, die eine Erweiterung anfordert, nicht aus dem, was sie tatsächlich tut. Hier ist jede angeforderte Berechtigung und der Grund dafür.
- declarativeNetRequest — Die API, die deine Header-Regeln anwendet. Chrome wertet die Regeln intern aus und ändert die Anfrage selbst – die Erweiterung bekommt den Inhalt deiner Anfragen nie zu sehen.
- storage — Speichert deine Regeln, damit sie Browser-Neustarts überstehen und sich zwischen deinen angemeldeten Chrome-Profilen synchronisieren. Deine Regeln sind das Einzige, was gespeichert wird.
- <all_urls> — Das ist die Berechtigung, die die erschreckende Warnung auslöst. Du entscheidest, auf welche URLs deine Regeln passen, deshalb lässt sich die Menge der Hosts nicht im Voraus kennen – die Erweiterung muss auf jeder URL handeln können, die du in eine Regel schreibst. Sie einzuschränken hieße, eine feste Liste von Seiten auszuliefern und überall sonst den Dienst zu verweigern.
Was sie nicht macht
- Liest keine Seiteninhalte und kein DOM.
- Liest oder protokolliert deinen Browserverlauf nicht.
- Erfasst keine Analysedaten, Nutzungsdaten oder Kennungen jeglicher Art.
- Stellt keine eigenen Netzwerkanfragen und lädt keinen entfernten Code.
- Sendet nichts an unsere Server oder an Dritte.
Grenzen, die du vor der Installation kennen solltest
Besser, du liest das hier, als es mitten in einer Fehlersuche zu entdecken.
- Nur dieser Browser — Regeln gelten für Anfragen, die dieser Browser stellt. Server-zu-Server-Aufrufe, curl, Postman, dein CI-Runner und die ausgehenden Anfragen deines Backends bleiben unberührt.
- Nur Request-Header — Response-Header werden nicht verändert. Wenn du ändern musst, was zurückkommt, ist das nicht das richtige Werkzeug.
- Manche Header lassen sich nicht setzen — Chrome schützt eine Reihe von Headern vor Änderungen durch Erweiterungen. Regeln, die auf sie zielen, werden stillschweigend verworfen – kein Fehler, keine Warnung. Wenn eine Regel richtig aussieht, aber nichts bewirkt, liegt es meist daran.
Fragen
Erfasst sie Daten über mich?
Nein. Keine Analyse, keine Telemetrie, keine Kennungen und keine Werbe- oder Attribution-SDKs. Die Erweiterung stellt keine eigenen Netzwerkanfragen. Das Einzige, was sie speichert, sind die Regeln, die du anlegst – im Speicher von Chrome selbst.
Warum braucht sie Zugriff auf alle Websites?
Weil du auswählst, auf welche URLs deine Regeln passen, ist die Menge der Hosts vorab nicht bekannt. Erst diese Berechtigung sorgt dafür, dass eine heute geschriebene Regel auch auf eine URL wirkt, von der wir nie gehört haben. Seiteninhalte und Browserverlauf liest sie nicht.
Kann sie Response-Header verändern?
Nein – nur Request-Header. Antworten zu verändern ist eine andere Fähigkeit, und die hat diese Erweiterung nicht.
Warum bewirkt meine Regel nichts?
Meist liegt es daran, dass Chrome genau diesen Header vor dem Setzen durch Erweiterungen schützt und die Änderung stillschweigend verwirft. Andernfalls prüfe, ob das URL-Muster wirklich auf die Anfrage passt, ob der Schalter der Regel an ist und ob der Hauptschalter nicht aus ist.
Wirkt sie sich auf Anfragen außerhalb des Browsers aus?
Nein. Betroffen sind nur Anfragen, die dieser Browser stellt. Alles von Server zu Server – auch die Anfragen deines eigenen Backends – geht unverändert hinaus.
Wo werden meine Regeln gespeichert?
In chrome.storage.sync, dem Speicher von Chrome selbst. Sie überstehen damit Neustarts und synchronisieren sich auf die anderen Rechner, an denen du im selben Chrome-Profil angemeldet bist. An uns werden sie nie gesendet.