XmlHttpRequest getAllResponseHeaders () не возвращает все заголовки - PullRequest
12 голосов
/ 20 января 2012

Я пытаюсь получить заголовки ответа из ajax-запроса, но метод xQuery getAllResponseHeaders xhr отображает только заголовок «Content-Type». Кто-нибудь знает почему?

Это заголовок ответа
Access-Control-Allow-Credentials: правда
Access-Control-Allow-Headers: If-Modified-Since, Cache-Control, Content-Type, Keep-Alive, X-Requested-With, Авторизация
Методы контроля доступа-разрешения: GET, PUT, POST, DELETE, OPTIONS
Access-Control-Allow-Origin: *
Access-Control-Max-Age: 1728000
Авторизация: apikey = "apikey1" AuthenticationToken = "62364GJHGJHG"
Подключение: держать-жив
Content-Length: 240
Content-Type: применение / JSON; кодировка = UTF-8
X-Powered-By: Express

Это функция успеха

params.success = function (response, textStatus, jqXHR) {
  console.log(jqXHR.getAllResponseHeaders())
}

Вот что записывает ...
Тип контента: приложение / JSON; кодировка = UTF-8

1 Ответ

12 голосов
/ 28 марта 2014

Просто столкнулся с этим. Это потому, что вы делаете запрос CORS и не выставляете заголовок Location.

Вам необходимо добавить Access-Control-Expose-Headers к вашему предварительному ответу CORS в Express:

res.header('Access-Control-Expose-Headers', 'Content-Type, Location');
res.send(200);

Это решит проблему.

...