WebAPI
-
[ASP.NET Core] AddController(), AddMvc(), AddControllersWithViews(), AddRazorPages() 차이점.NET/ASP.NET Core 2021. 6. 26. 11:33
ASP.NET Core에서 MVC 템플릿으로 프로젝트를 생성하면 Startup 클래스의 ConfigureServices 메소드에서AddControllersWithViews()를 확인할 수 있다. public void ConfigureServices(IServiceCollection services) { services.AddControllersWithViews(); } 함수 이름으로 유추해봐도 알 수 있듯이, MVC 모델의 Controller와 View를 ASP.NET Core에서 사용하겠다는 뜻을 의미한다. 그런데 AddControllersWithViews 가 아닌, AddMVC를 사용해도 문제없이 동작하는 것을 확인할 수 있다. 이 메소드들은 공통적으로 MvcServiceCollectionExtens..
-
[ASP.NET Core] HTTP Cache-Control Header 를 이용한 Get 응답(Response) 캐싱 및 파일 다운로드 예제.NET/ASP.NET Core 2021. 4. 12. 22:34
운영중인 웹 서비스에 대한 수정요청이 있어 작업하던 도중 파일 다운로드기능에 캐싱이 필요하여 응답 캐싱이 가능하도록 작업했다. 사실 사용자 수가 많지 않은 내부서비스라 딱히 적용안해도 되긴 하지만 돈(?) 안되는 트래픽은 줄일 수 있으면 줄이는 습관을 가지는게 좋은지라 적용했다. 적용자체도 그리 어렵지 않다. 1. Startup.cs에 AddResponseCaching() 및 UseResponseCaching() 적용 Startup.cs 에 services.AddResponseCaching()과 app.UseResponseCaching() 함수를 이용하여 캐싱 기능을 적용한다. using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Hosting;..
-
[ASP.NET Core] axios 로 Array 형식의 파라메터를 전달하는 Get 메소드 사용시 유의사항.NET/ASP.NET Core 2021. 1. 21. 21:53
회사에서 WebAPI + Vue 조합으로 사내 서비스를 개발하던 중, Get 형식으로 javascript array 형식의 파라메터를 전달할 때 파라메터를 제대로 인식하지 못해 애먹었던 일이 있었다. 다른 파라메터는 잘 되는데 유독 배열만 값이 전달되지 않아 브라우저의 개발툴>Network 에서 전달되는 URL의 형식을 확인하게 되었다. URL 전체주소는 아래와 같다. http://localhost:8080/api/values?numbers[]=1&numbers[]=2&numbers[]=3&numbers[]=4&numbers[]=5 확인결과 파라메터 이름에 "[]"가 붙어서 전달되었기 때문에, 소스코드에서 "numbers" 란 이름으로 매칭되어야 하는 서버측 코드에선 인식이 안되었던 것이다. 수정 전 소..