如何知道该请求是否是 asp.net mvc 中的 ajax?

任何人我怎么知道请求是否是 ajax? (我使用 jquery 来表示 ajax)

57925 次浏览

All AJAX calls made by jQuery will have a header added to indicate it is AJAX. The header to check is X-Requested-With, and the value will be XMLHttpRequest when it is an AJAX call.

Note that AJAX requests are normal GETs or POSTs, so unless you (or your AJAX library like jQuery) are adding an additional header in the request, there is no way to know for certain whether it is AJAX or not.

There's also the Request.IsAjaxRequest if you're using a later version of MVC. I don't have version 1 anymore so I can't say if it's in version 1.

If you need this check in Global.asax.cs try this: new HttpRequestWrapper(Request).IsAjaxRequest()

It works for me in ASP.NET MVC 3

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