2014-07-04 2 views
-1

Я хочу послать Ajax-подобный запрос с этими заголовками (или что-то вроде этого):запрос Нормальный HTTP в JQuery без заголовка XHR

GET example.com/ajaxapi/article/1 HTTP/1.1 
Host: localhost 
Accept: application/hal+json 
Cache-Control: no-cache 

Важный момент делает это без X-Requested-With : XMLHttpRequest в заголовках.

$ .ajax(), $ .get(), ... все добавляют к этому заголовок xhr по умолчанию.

+0

Просто используйте XMLHttpRequest напрямую. – Quentin

+0

Просто из любопытства, почему так голосуют. Я нашел решение этого. Что-то не так с моим вопросом? –

ответ

0

Вы можете изменить заголовки с помощью функции beforeSend, которая является свойством объекта настроек метода ajax.

Из documentation, описание beforeSend:

Функция обратного вызова предварительно запрос, который может быть использован для изменения jqXHR (в JQuery 1.4.x, XMLHTTPRequest) объект перед его отправкой. Используйте это, чтобы установить пользовательские заголовки и т. Д. Объекты jqXHR и настройки передаются в качестве аргументов. Это событие Ajax. Возврат false в функции beforeSend отменяет запрос. Начиная с jQuery 1.5, опция beforeSend будет вызываться независимо от типа запроса.

Пример:

$.ajax('/yoururl', { 
    beforeSend: function(jqXHR, settings) { 
     // stuff goes here 
    } 
}); 
-1

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

$.ajax({ 
    url: url, 
    crossDomain: true 
}); 

опция crossDomain сделала трюк и удалила заголовок XMLHttpRequest.

Смежные вопросы