Подтвердить что ты не робот

Как удалить HTTP-заголовки в Javascript

Возможно ли до отправки HTTP-сообщения удалить некоторые определенные заголовки HTTP, используя javascript/XmlHttpRequest?

Я использую проприетарный браузер, поэтому нет способа сделать это, используя конкретное решение для браузера.

Например, я хочу удалить заголовок "Авторизация" перед отправкой сообщения

POST /social/rpc?oauth_version=1.0& ... HTTP/1.1

Accept: text/html, image/png, image/*, */*
Accept-Language: ko
Authorization: Basic Og==
Host: test.myhost.com

Привет

4b9b3361

Ответ 1

Вы можете использовать метод setRequestHeader объекта XmlHttpRequest, предполагая, что ваш браузер поддерживает его, Он является частью спецификации W3C. Он также реализован IE.

var req = new XMLHttpRequest();
req.setRequestHeader("Authorization", "");

Ответ 2

Когда я использую jquery-file-upload и хочу удалить заголовок в методе options, установка его на null или '' не работает для меня. Я использую это вместо:

req.setRequestHeader("Authorization");

Ответ 3

Никогда не делал этого, но теоретически вы могли бы попробовать:

xhr.setRequestHeader('Authorization', null);

В некоторых реализациях также есть неопределенная функция removeRequestHeader(), вы можете попробовать попробовать.

Ответ 4

Ответ Адама не помог мне. Однако следующее:

xhr.setRequestHeader('Authorization', ' ');

второй параметр - это строка, содержащая пробел вместо пустого пространства. Он не полностью удаляет заголовок, но устанавливает его в пустую строку, чего может быть достаточно для некоторых случаев.