Надішліть спеціальний заголовок HTTP лише одному певному хосту


11

Чи існує спосіб (надбудова Firefox або про: налаштування конфігурації) надіслати спеціальний заголовок HTTP для запитів до певного хоста?

Приклад: Надішліть заголовок, Foobar: trueякщо (і лише якщо) я вимагаю ресурс від хоста foo.example.com.

Бонусні бали, якщо протокол також може бути вказаний (наприклад, надсилайте заголовок лише при запиті через HTTPS).

(див. моє запитання Використовуйте додатковий "пароль" у Referer, щоб приховати приватний сайт? На IT Security SE, чому я хотів би це зробити)

Що я знайшов поки що

Відповіді:


6

Якщо ви не обмежені Firefox, ви можете використовувати розширення Google Chrome Header Hacker .

Він передбачає:

  1. користувацькі заголовки запитів (ви можете або додати нові заголовки, або замінити існуючі)
  2. постійні заголовки для вказаних хостів (ви можете або додати нові заголовки, або замінити існуючі)

Так що ви можете вирішити свою проблему за допомогою другої функції.

Я багато використовую розширення, і воно прекрасно працює для мене.


Дякую. Я обмежений Firefox, але ваша відповідь, звичайно, може бути корисною для інших. :)
unor

1
Посилання розірвано
Taha Jahangir

1
@TahaJahangir, що підтримує розширення, нещодавно змінив назву програми. Я оновив розірване посилання. І так, розширення дуже корисні - я використовую його щодня
ajukraine

що робити, якщо розширення має помилку, або розширення не працює з потрібною вами версією браузера, або якщо розробники просто перестали оновлювати розширення? Я бачу, що це відбувається для більшості, якщо не всіх розширень Firefox, які дозволяють вам додавати / змінювати заголовки запитів.
MasterJoe2

5

Додаток Firefox, Інструмент заголовка, робить те, що ви шукаєте: https://addons.mozilla.org/en-us/firefox/addon/header-tool/

Я щойно спробував це обмежити свій власний заголовок запиту на localhost.


1
що робити, якщо розширення має помилку, або розширення не працює з потрібною вами версією браузера, або якщо розробники просто перестали оновлювати розширення? Я бачу, що це відбувається для більшості, якщо не всіх розширень Firefox, які дозволяють вам додавати / змінювати заголовки запитів.
MasterJoe2

2
Це розширення не існує у Firefox 57.
Джейсон Р. Кумбс

2

З моменту випуску Firefox 57, я виявив, що плагін Modify Header Value виконує свою справу.

Зміна значення заголовка може додавати, змінювати або видаляти заголовк HTTP-запиту для всіх запитів на потрібному веб-сайті чи URL-адресі.


0

у випадку, якщо вам потрібно підробляти ваш користувальницький агент:

Спеціальний рядок UserAgent : "Додайте користувальницький рядок useragent для потрібних URL-адрес чи доменів."
цей додаток не змінить ваш користувальницький JavaScript.

щоб також змінити JS UA, додайте цей користувальницький скрипт у mastsemonkey:

// ==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)'
});

ці застарілі аддони не працюють із поточним Firefox:

  • UAControl : це розширення дозволить вам контролювати, яка рядок надсилається як User-Agent у заголовку HTTP, для кожного сайту (домену).
    Зверніть увагу, що це не може керувати нативним рядком User-Agent, який використовується JavaScript (наприклад, navigator.userAgent).
  • ua-site-switch : змінити Агент користувача для поточного домену.
    UA змінюється лише в заголовку HTTP запиту, тому це не заважає Javascript визначити реальний UA.
    Якщо вам потрібно змінити UA на рівні javascript, ви можете використовувати приємний додаток під назвою User-Agent JS Fixer.
  • User-Agent JS Fixer : Цей додаток може змінювати JavaScript User-Agent на основі кожного сайту, а не змінювати протягом усього сеансу.
    Він нічого не робить сам по собі, але доповнює функціональність іншого додатка, такого як UAControl або ua-site-switch. Не потрібна додаткова конфігурація, вона використовує ті самі налаштування від них.
    Все, що він робить, - це перевизначити User-Agent для коду JavaScript (navigator.userAgent), використовуючи ту саму рядок, що була надіслана в заголовку HTTP.

[.... як відправна точка, якщо хтось хоче написати кращий аддон]

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.