본문 바로가기
.Net

.NET/MVC - 기존 프로젝트에 WEB API 추가하기

by 올엠 2024. 2. 24.
반응형

.Net MVC를 개발하다보면, 프로젝트 초기에는 필요 없던 RestFul을 통한 Web API 기능이 필요할 때가 있다. 

여기에서는 기존 MVC 프로젝트에 Web API를 추가하는 방법을 알아보고자 한다.

1. Web API 컨트롤러 추가

먼저 Web API를 추가해보자. 기본 템플릿에서 제공하는 Web API를 추가하면 기본적으로  Get, Post 등의 평션이 생성되어 바로 테스트에 사용할 수 있다.

여기서 주의할 점은 Colltroller 앞에 나오는 이름이 실행하는 REST API 네이밍 구분자가 된다는 것이니 기능에 알맞은 이름을 주면 된다. 여기에서는 Test로 주었다.(대소문자 구분 X)

 


 

추가 이후 실행해 보면, 정상적으로 동작을 하지 않는다. 이유는 Web API의 Route 경로를 추가해 줘야 한다.
 
 
 

2. WebApiConfig 추가

App_Start 폴더에서 WebApiConfig라는 Class 파일 만들어, 아래 내용을 입력하자.
    public static class WebApiConfig
    {
        public static void Register(HttpConfiguration config)
        {
            config.MapHttpAttributeRoutes();

            config.Routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "api/{controller}/{id}",
                defaults: new { id = RouteParameter.Optional }
            );
        }
    }
아래 그림 처럼 HttpConfiguration 사용에 에러가 발생하면, System.Web.Http 라이브러리를 참조에 추가하면 해결 된다.

3. Global.asax WebApiConfig 추가

그리고 마지막으로 Global.asax에 다음 내용을 추가하면 완료이다.
GlobalConfiguration.Configure(WebApiConfig.Register);
다시 디버깅을 통해 확인해보면 정상적으로 코드가 실행되는 것을 확인할 수 있다.
반응형