전체 글
-
[NodeJS] module is not defined in ES module scopeJavascript & TypeScript 2023. 3. 1. 14:56
모듈 스크립트 작성에 실수가 없다면 파일 확장자명을 확인하라. 구성한 프로젝트가 ES6+ 기반 모듈 문법을 사용한다면 commonjs 모듈 사용시 아래와 같은 오류를 만날 수 있다. [ReferenceError] module is not defined in ES module scope This file is being treated as an ES module because it has a '.js' file extension and 'C:\repos\ddochea0314.github.io\package.json' contains "type": "module". To treat it as a CommonJS script, rename it to use the '.cjs..
-
[DevContainer] 컨테이너 환경에서 Vite의 hot reload가 안될 경우 (with VSCode, svelte)ETC 2023. 2. 23. 00:19
일반적인 로컬환경에서는 잘 동작하는 vite hot reload가 sveltekit 프로젝트를 devcontainer 내에서 코딩 및 디버그를 할 때제대로 동작하지 않고 매번 npm run dev 명령어로 새로 실행해줘야 수정사항이 반영되는 현상이 있었다. 해결방법은 로컬에 있는 소스코드를 bind 방식이 아닌, volume 으로 동작해야하는데, 이렇게 되면 빌드 후 생성된 volumne이 빈 volumne이 된다. // See https://containers.dev/implementors/json_reference/ for configuration reference { "name": "Node.js with firebase", "build": { "dockerfile": "Dockerfile" }, ..
-
[ASP.NET Core] WebApi with Swagger - 5. enum.NET/ASP.NET Core 2023. 2. 18. 13:26
아래와 같은 Controller 소스가 있다. using Microsoft.AspNetCore.Mvc; namespace swagger_5_enum.Controllers; [ApiController] [Route("[controller]")] public class WeatherForecastController : ControllerBase { private static readonly string[] Summaries = new[] { "Freezing", "Bracing", "Chilly", "Cool", "Mild", "Warm", "Balmy", "Hot", "Sweltering", "Scorching" }; private readonly ILogger _logger; public WeatherF..
-
[ASP.NET Core] WebApi with Swagger - 4. DataAnnotations을 통한 유효성 검사(Vaildation) 응답.NET/ASP.NET Core 2023. 2. 16. 23:13
System.ComponentModel.DataAnnotations 네임스페이스에 속한 특성(Attribute)를 통해 요청값에 대한 유효성 처리를 적용할 수 있다. /// /// 입력된 일수만큼 날씨 데이터를 제공합니다. /// /// 입력일수 /// [HttpGet("{cnt}", Name = "GetWeatherForecastByCount")] public IEnumerable Get( [Required][Range(1, 10)] int cnt) { // 이제 cnt 값은 1~10 사이의 값이 필수적으로 들어와야 한다. return Enumerable.Range(1, cnt).Select(index => new WeatherForecast { Date = DateTime.Now.AddDays(ind..
-
[ASP.NET Core] WebApi with Swagger - 3. 응답 명세(ProducesResponseType).NET/ASP.NET Core 2023. 2. 15. 23:27
항상 올바른 요청(Request)에 올바른 응답(Response)값만 줄 수 있는 상황이라면 좋겠지만, 요청이 거지같거나(?) 올바른 요청이지만 이를 제대로 제공할 데이터가 없는 경우가 종종 있다. ProducesResponseType는 이와 같이 응답상태에 따라 타입을 지정하여 안내할 수 있는 방법을 제공한다. 아래 소스코드는 데이터가 없을 땐 string 형식으로, 데이터가 있을땐 WeatherForecast 배열형식으로 이원화하여 응답할 수 있음을 안내하는 예제이다. /// /// 오늘 ~ 입력한 날짜 하루전에 해당하는 날씨 데이터를 제공합니다. /// /// 입력날짜 /// [HttpGet("datetime", Name = "GetWeatherForecastByDateTime")] [Produce..
-
[Docker] docker endpoint for "default" not found 발생 시 해결ETC 2023. 2. 15. 22:50
devcontainer 환경에서 구성한 docker-compose build 과정에서 docker endpoint for "default" not found 라는 메시지가 나타났다. Windows의 경우 아래와 같이 시도해보라고 한다. 1. .docker 폴더 삭제 말그래도 개인폴더 및에 있는 .docker 폴더를 삭제해보라고 한다. 일반적인 설정으로 Windows OS를 설치했다면 아래와 같은 경로에 자신의 .docker 폴더를 찾을 수 있을 것 이다. C:\Users{유저폴더명}.docker 2. docker 재실행 pwsh 기준으로 아래와 같이 재실행하거나, 그냥 시스템 tray 아이콘에서 restart 눌러주면 된다. $processes = Get-Process "*docker desktop*" ..
-
[ASP.NET Core] WebApi with Swagger - 2. 예제(example) 적용.NET/ASP.NET Core 2023. 2. 14. 22:40
Swagger 문서내 요청에서 파라메터에 어떤 값이 들어가야하는지, 또는 어떤 값이 나올지 주석을 이용해 제한적으로나마 예제(example)을 적용할 수 있다. 1. 숫자 /// /// 입력된 일수만큼 날씨 데이터를 제공합니다. /// /// 입력일수 // 숫자형 예제 /// [HttpGet("{cnt}", Name = "GetWeatherForecastByCount")] public IEnumerable Get(int cnt) { return Enumerable.Range(1, cnt).Select(index => new WeatherForecast { Date = DateTime.Now.AddDays(index), TemperatureC = Random.Shared.Next(-20, 55), Summ..