Senden Sie einen benutzerdefinierten HTTP-Header nur an einen bestimmten Host
Gibt es eine Möglichkeit (Firefox-Add-On oder about:config-Einstellung), einen benutzerdefinierten HTTP-Header für Anforderungen an einen bestimmten Host zu senden?
Beispiel: Senden Sie den Header Foobar: true
, wenn (und nur wenn) ich eine Ressource vom Host anfordere foo.example.com
.
Bonuspunkte, wenn auch das Protokoll angegeben werden kann (z. B. nur den Header senden, wenn über HTTPS angefordert wird).
(siehe meine Frage Verwenden Sie ein zusätzliches "Passwort" im Referer, um die private Site auszublenden. auf der IT-Security-SE auf, warum ich möchte tun Sie es)
Was ich bisher gefunden habe
- Die Frage Browser-Erweiterungen automatisch HTTP-Header ändern? ist ähnlich, aber auf der Suche nach einer Möglichkeit, dies zu erreichen (z. B. mit Hilfe lokaler Proxys) und auch nicht unbedingt für Firefox
- Sie können benutzerdefinierte Header mit dem Add-On Modify Headers erstellen, aber ich kann die Hosts nicht einschränken, sodass die benutzerdefinierten Header für alle Anforderungen gesendet werden
- Es gibt einige add-ons, festlegen benutzerdefinierter Werte für bestimmte HTTP-Header pro Host zulassen:
-
RefControl für
Referer
-
HeaderControlRevived für
User-Agent
,Referer
undAccept-Language
-
RefControl für
- Verwandte Fragen:
4 answers
Wenn Sie mit Firefox nicht eingeschränkt sind, können Sie die Erweiterung von Google Chrome verwenden Header Hacker.
Es bietet:
- benutzerdefinierte Anforderungsheader (Sie können entweder neue Header hinzufügen oder vorhandene überschreiben)
- permanente Header für angegebene Hosts (Sie können entweder neue Header hinzufügen oder vorhandene überschreiben)
Damit Sie Ihr Problem mit der zweiten Funktion lösen können.
Ich benutze die Erweiterung oft und es funktioniert gut für mich.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2014-09-16 13:22:22
Das Firefox-Add-On, Header-Tool, macht das, wonach Sie suchen: https://addons.mozilla.org/en-us/firefox/addon/header-tool/
Ich habe es gerade ausprobiert, um meinen benutzerdefinierten Anforderungsheader auf localhost zu beschränken.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2015-10-16 18:25:19
Seit der Veröffentlichung von Firefox 57 habe ich festgestellt, dass das Plugin Modify Header Value den Trick macht.
Modify Header Value kann einen HTTP-Request-Header für alle Anfragen auf einer gewünschten Website oder URL hinzufügen, ändern oder entfernen.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2018-07-11 22:13:49
Falls Sie Ihren User-Agent fälschen müssen:
Benutzerdefinierte UserAgent-Zeichenfolge: "Fügen Sie eine benutzerdefinierte Useragent-Zeichenfolge für die gewünschten URLs oder Domänen hinzu."
dieses Addon wird nicht ändern Sie Ihre Javascript-User-Agent.
Um auch das JS-Skript zu ändern, fügen Sie dieses Benutzerskript zu greasemonkey hinzu:
// ==UserScript==
// @name Change navigator.userAgent
// @namespace Rob W
// @description Changes navigator.userAgent to IE on IEGallery.com
// @match http://www.iegallery.com/*
// @run-at document-start
// @grant none
// @version 1
// ==/UserScript==
Object.defineProperty(navigator, 'userAgent', {
value: 'Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Trident/6.0)'
});
Diese veralteten Addons funktionieren nicht mit dem aktuellen Firefox:
-
UAControl: Mit dieser Erweiterung können Sie steuern, welche Zeichenfolge als User-Agent im HTTP-Header pro Site (Domain).
Beachten Sie, dass dies die native User-Agent-Zeichenfolge, die von JavaScript verwendet wird, nicht steuern kann (z. B. Navigator.userAgent). -
ua-site-switch: Ändern Sie den Benutzeragenten für die aktuelle Domäne.
Die UA wird nur im HTTP-Header der Anforderung geändert, sodass Javascript nicht daran gehindert wird, die tatsächliche UA zu bestimmen.
Wenn Sie die UA auf Javascript-Ebene ändern müssen, können Sie ein nettes Addon namens User-Agent JS Fixer verwenden. -
User-Agent JS Fixer: Dieses Addon kann den JavaScript-Benutzeragenten pro Site ändern, anstatt sich für die gesamte Sitzung zu ändern.
Es macht nichts von selbst, aber es ergänzt die Funktionalität eines anderen Addon wie UAControl oder ua-site-switch. Es ist keine zusätzliche Konfiguration erforderlich, es werden dieselben Einstellungen verwendet.
Alles, was es tut, ist, den User-Agent für JavaScript-Code neu zu definieren (Navigator.UserAgent) verwendet dieselbe Zeichenfolge, die im HTTP-Header gesendet wurde.
[ .... als ein Ausgangspunkt, wenn jemand ein besseres Addon schreiben möchte ]
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2019-08-29 13:46:17