Запрос JQuery Ajax: Изменить User-Agent

Я использую JQuery для выдачи AJAX-запроса моему собственному веб-сервису. Мне нужно установить или изменить User-Agent HTTP-заголовок для HTTP-AJAX-запроса, как я могу сделать это самым простым способом?

я попробовал подсказку, предоставленную некоторыми пользователями, чтобы использовать setRequestHeader метод для установки User-Agent, но это не работает. Он действительно работает для других вновь созданных заголовков (например,X-Test-Header), но это не работает для User-Agent.

спасибо!

3 ответов


Это просто невозможно, вы не можете изменить user-agent для XMLHttpRequests. Я не уверен, что это действительно для Internet-Explorer, но w3c указывает здесь:

метод setRequestHeader ()

[...]

при вызове метода setRequestHeader (header, value) агент пользователя должен выполнить следующие действия: [...]

завершите эти шаги, если заголовок не учитывает регистр для одного из следующих заголовков:

[...]

  • User-Agent

Если вы используете jQuery, установите заголовок запроса в ajaxSetup.

$.ajaxSetup({
  beforeSend: function(request) {
    request.setRequestHeader("User-Agent","InsertUserAgentStringHere");
  }
});

Ну, вы всегда можете использовать jQuery для публикации на серверной странице, которая, в свою очередь, может изменить , а также сделать запрос на страницу, которая была бы непосредственно на jQuery.