본문 바로가기

.NET/C#

controller 메서드 호출이 ajax 호출인지 확인하는 방법 | ChatGPT

728x90
반응형

Requst 객체로 메서드 접근 방법 확인

ASP.NET MVC 컨트롤러에서 클라이언트가 요청을 통해 해당 액션 메서드(callList)에 어떻게 접근했는지 확인하려면 Request 객체를 통해 요청의 속성을 검사할 수 있습니다. 

Request.IsAjaxRequest() 메서드

Request.IsAjaxRequest() 메서드를 사용하여 요청이 Ajax를 통해 발생했는지 확인할 수 있습니다.

이 메서드는 요청 헤더에서 X-Requested-With 헤더를 확인하여 Ajax 요청 여부를 판단합니다. 

Request.IsAjaxRequest() 메서드 사용 예제

다음은 컨트롤러에서 Request.IsAjaxRequest()를 사용하여 요청이 Ajax를 통해 접근했는지 여부를 확인하는 방법을 보여주는 코드 예제입니다:

using System.Web.Mvc;

public class YourController : Controller
{
    public ActionResult Search()
    {
        if (Request.IsAjaxRequest())
        {
            // 클라이언트가 Ajax를 통해 이 액션에 접근한 경우
            // 이 곳에서 처리할 내용 추가
        }
        else
        {
            // 일반 HTTP 요청으로 이 액션에 접근한 경우
            // 이 곳에서 처리할 내용 추가
        }

        // 여기에 공통 처리 로직 추가

        return View();
    }
}

위의 코드에서 Request.IsAjaxRequest() 메서드를 사용하여 Ajax 요청 여부를 확인하고, 그에 따라 처리할 내용을 분기합니다. 이렇게 함으로써 클라이언트가 Ajax를 통해 이 액션에 접근했는지 또는 일반 HTTP 요청으로 접근했는지를 판단할 수 있습니다.

출처 | ChatGPT

728x90
반응형