в IE заголовок «X-Requested-With» jquery становится «x-запрашиваемым-с» (строчными буквами) - PullRequest
13 голосов
/ 15 июля 2009

Почему он конвертируется в нижний регистр? В Firefox это выглядит так: «X-Requested-With». Находясь в IE, он выглядит так: "x-запрашиваемый с"

Ответы [ 2 ]

15 голосов
/ 15 июля 2009

Метод HTTP должен быть чувствительным к регистру, но заголовки HTTP должны быть нечувствительными к регистру, в соответствии с RFC 2616 .

9 голосов
/ 25 августа 2009

Я заметил нечто подобное. Взгляните на пример кода и на то, что он делает, когда я добавляю несколько пользовательских заголовков HTTP. Сначала идет код JavaScript, а затем дамп Fiddler (только для пользовательских заголовков) из IE8, Safari4 и Firefox3. Обратите внимание, что Firefox учитывает регистр, IE конвертирует в нижний регистр, а Safari конвертирует в правильный регистр.

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

function doXHR() {
  var request = new XMLHttpRequest();
  request.open('GET', '/header/header.txt');
  request.setRequestHeader('x-lowercase', 'X-lowercase');
  request.setRequestHeader('x-Propercase', 'X-Propercase');
  request.setRequestHeader('x-CamelCase', 'X-CamelCase');
  request.setRequestHeader('x-UPPERCASE', 'X-UPPERCASE');
  request.onreadystatechange = function() {
    if (request.readyState == 4) {
      console.log('Received XMLHttpRequest callback: \n' + request.responseText);
    }
  };
  request.send("");
}

User-Agent: Mozilla / 4.0 (совместимый; MSIE 8.0; Windows NT 6.0; Trident / 4.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 3.5.21022; .NET CLR 3.5.30729; .NET CLR 3.0.30618)

x-lowercase: X-lowercase
x-camelcase: X-CamelCase
x-uppercase: X-UPPERCASE
x-propercase: X-Propercase

User-Agent: Mozilla / 5.0 (Windows; U; Windows NT 6.0; ru-ru) AppleWebKit / 528.18 (KHTML, как Gecko) Версия / 4.0 Safari / 528.17

X-Lowercase: X-lowercase
X-Uppercase: X-UPPERCASE
X-Camelcase: X-CamelCase
X-Propercase: X-Propercase

Пользователь-агент: Mozilla / 5.0 (Windows; U; Windows NT 6.0; en-US; rv: 1.9.0.6) Gecko / 2009011913 Firefox / 3.0.6 (.NET CLR 3.5.30729)

x-lowercase: X-lowercase
x-Propercase: X-Propercase
x-CamelCase: X-CamelCase
x-UPPERCASE: X-UPPERCASE
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...