[asp.net] 요청이 asp.net mvc에서 ajax인지 확인하는 방법은 무엇입니까?
아무도 요청이 ajax인지 어떻게 알 수 있습니까? (저는 ajax에 jquery를 사용하고 있습니다)
답변
jQuery가 만든 모든 AJAX 호출에는 AJAX임을 나타내는 헤더가 추가됩니다. 확인할 헤더는 X-Requested-With
이며 값은 XMLHttpRequest
AJAX 호출 일 때입니다.
AJAX 요청은 일반 GET 또는 POST이므로 사용자 (또는 jQuery와 같은 AJAX 라이브러리)가 요청에 추가 헤더를 추가하지 않는 한 AJAX인지 여부를 알 수있는 방법이 없습니다.
답변
도 있습니다 Request.IsAjaxRequest
MVC의 당신이 사용하는 경우 이후 버전. 더 이상 버전 1이 없어서 버전 1인지 말할 수 없습니다.
Global.asax.cs에서이 확인이 필요한 경우 다음을 시도하십시오.
new HttpRequestWrapper(Request).IsAjaxRequest()
답변
ASP.NET MVC 3에서 나를 위해 작동합니다.
if (Request.IsAjaxRequest())
{
// ajax request handled
}