Как узнать, является ли запрос ajax в asp.net mvc?

кто-нибудь, как я могу узнать, является ли запрос ajax? (Я использую jquery для ajax)

Ответ 1

Все вызовы AJAX, сделанные jQuery, будут содержать заголовок, указывающий, что это AJAX. Контрольный заголовок X-Requested-With, а значение будет XMLHttpRequest, когда это вызов AJAX.

Обратите внимание, что запросы AJAX являются нормальными GET или POST, поэтому, если вы (или ваша библиотека AJAX, например jQuery) не добавили дополнительный заголовок в запрос, неизвестно, является ли это AJAX или нет.

Ответ 2

Также существует Request.IsAjaxRequest, если вы используете более позднюю версию MVC. У меня больше нет версии 1, поэтому я не могу сказать, если она в версии 1.

Если вам нужна эта проверка в Global.asax.cs, попробуйте это: new HttpRequestWrapper(Request).IsAjaxRequest()

Ответ 3

Он работает для меня в ASP.NET MVC 3

if (Request.IsAjaxRequest())
{
     // ajax request handled
}