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

时间:2010-10-05 13:42:26

标签: asp.net asp.net-mvc ajax

任何人如何知道请求是否是ajax? (我正在使用jquery for ajax)

3 个答案:

答案 0 :(得分:170)

如果您使用的是更高版本的MVC,还有Request.IsAjaxRequest。我没有版本1所以我不能说它是否在版本1中。

如果您需要在Global.asax.cs中进行此检查,请尝试以下操作: new HttpRequestWrapper(Request).IsAjaxRequest()

答案 1 :(得分:66)

jQuery发出的所有AJAX调用都会添加一个标头来表明它是AJAX。要检查的标头是X-Requested-With,当它是AJAX调用时,该值将为XMLHttpRequest

请注意,AJAX请求是普通的GET或POST,因此除非您(或您的AJAX库如jQuery)在请求中添加额外的标头,否则无法确定它是否是AJAX。

答案 2 :(得分:50)

它适用于ASP.NET MVC 3

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