[asp.net] 요청이 asp.net mvc에서 ajax인지 확인하는 방법은 무엇입니까?

아무도 요청이 ajax인지 어떻게 알 수 있습니까? (저는 ajax에 jquery를 사용하고 있습니다)



답변

jQuery가 만든 모든 AJAX 호출에는 AJAX임을 나타내는 헤더가 추가됩니다. 확인할 헤더는 X-Requested-With이며 값은 XMLHttpRequestAJAX 호출 일 때입니다.

AJAX 요청은 일반 GET 또는 POST이므로 사용자 (또는 jQuery와 같은 AJAX 라이브러리)가 요청에 추가 헤더를 추가하지 않는 한 AJAX인지 여부를 알 수있는 방법이 없습니다.


답변

도 있습니다 Request.IsAjaxRequestMVC의 당신이 사용하는 경우 이후 버전. 더 이상 버전 1이 없어서 버전 1인지 말할 수 없습니다.

Global.asax.cs에서이 확인이 필요한 경우 다음을 시도하십시오.
new HttpRequestWrapper(Request).IsAjaxRequest()


답변

ASP.NET MVC 3에서 나를 위해 작동합니다.

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


답변