Я использую jQuery.ajax
для создания HTTP-соединений. В моем проекте я хотел бы настроить пользовательские заголовки HTTP, но я бы хотел отправить только те, которые я установил. В настоящее время мои заголовки отправляются, но, кроме того, есть и ряд других заголовков, которые я не задавал.
Это, как я добавляю пользовательские заголовки:
$.ajax("http://fakedomain.foo", {headers: {header1: "value1", header2: "value2"}});
Я мог бы быть хорошо, даже в случае, если это не представляется возможным установить целую коллекцию заголовков, но только добавить лишние. Но даже в этом случае
иногда мои заголовки изменяются перед отправкой. Например, если я добавить эти заголовки
:
{
"Connection": "close",
"Accept-Encoding": "deflate, gzip",
"Accept": "text/plain",
}
Тогда это то, что на самом деле отправляется (я сделал захват с Wireshark только проверить это)
{
"Connection": "close",
"Accept-Encoding": "gzip,deflate,sdch",
"Accept": "text/plain, */*; q=0.01",
"Accept-Language": "es-ES,es;q=0.8",
"Dnt": "1",
"Accept-Charset": "ISO-8859-1,utf-8;q=0.7,*;q=0.3",
...
}
Как вы можете см. некоторые злые gobling вне там tweaking мои headers, и он добавил кодировку «sdch» к заголовок «Accept-Encoding», а также изменил заголовок «Принять», чтобы он также принимал
*/*
. Это настоящая проблема, если WS придирчивый и требует принятия разных действий на основе заголовков.
Так, чтобы подвести итог:
Есть ли способ, чтобы отправить только мои заголовки и никаких лишних?
2. Если нет, есть ли способ добавить свои пользовательские заголовки, как они есть, без их изменения?
UPDATE:
Мой плохо, я не устанавливал заголовки правильно. (Код, который я опубликовал, верен, но в моих модульных тестах была ошибка, поэтому мои заголовки не были добавлены, и вместо них были отправлены по умолчанию. После исправления я вижу, что мои заголовки отправляются с правильным текстом, и никаких изменений. Так что забудьте о # 2. вопрос # 1 по-прежнему применяется.
1) № 2) №. Заголовки, которые отправляются, зависят от броузера, хотя все они каким-либо образом изменят их. –