본문 바로가기

개발57

[AWS] Route53 도메인 등록 이번에 회사에서 cloudflare에 등록되어있던 도메인을 AWS로 아예 옮기는 작업을 진행했는데 Route53에 도메인등록, ACM발급, cloudfront 배포, EC2 API 서버 도메인 연결까지 단계별로 정리할 예정이다! 도메인 구입과 s3생성은 완성되어있다는 가정하에 진행!!! Route53에 도메인을 등록하는 일은 굉장히 간단한 작업이다. aws Route53 콘솔에 접속후 우측 상단에 호스팅 영역 생성 버튼을 클릭 사용할 도메인 입력후 별다른 설정없이 우측 하단 호스팅 영역 생성 버튼 클릭 호스팅 영역 생성을 하면 이렇게 등록이 진행되는데 그럼 도메인을 구입한 사이트로 이동해서 해당 사이트에 등록돼 있는 네임서버를 생성된 레코드 유형이 NS인 레코드의 값/트래픽 라우팅 대상 값으로 바꿔주면 .. 2023. 5. 3.
[NestJS] swagger 보안(잠금) 실제 운영중인 서비스 API가 아무런 잠금 없이 노출되고 사용되고 있다면 굉장히 위험한 상황일것이다. 그런일이 발생하지 않도록 swagger에 아이디와 비밀번호를 걸어보도록 하자!! NestJs는 기본적으로 express위에서 동작하기 때문에 express에서 사용하던 라이브러리를 사용하면 된다. 설치법 npm install express-basic-auth 사용법 import expressBasicAuth from "express-basic-auth"; app.use( ["/api"], expressBasicAuth({ challenge: true, users: { [process.env.SWAGGER_USER]: process.env.SWAGGER_PASSWORD } }) ); challenge옵션을.. 2023. 4. 24.
[JavaScript] await? return await? return? 필자의 경우 nestjs로 백앤드를 개발하고 있는데 개발을 하다 보면 비동기 함수를 사용하는 경우가 많고 그럼 async 선언을 많이 하는데 이 함수들을 사용할 때 return에 대해서 어떻게 처리하는 게 올바른가에 대한 생각을 자주 하게 된다. 그럴 때마다 구글에서 검색하면 어떤 외국 원문이 굉장히 잘 설명되어 있고 그 글을 해석한 글들이 굉장히 많이 있기 때문에 볼 때마다 이해했다고 착각? 하고 그 순간만 넘기다 보니 똑같은 주제를 3번 이상 찾아보고 있다는 걸 느꼈고 내용은 같더라도 직접 정리해서 내 거로 만들고 다시 검색하는 일을 없애기 위해 작성하는 글이다!! 부디 기존 글들과 같다고 나쁘게 생각하지 마세요!!! 이 글을 보시는 분들도 이러한 생각들을 고민한 적이 있다면 주저 없이 작성하고 정리.. 2023. 3. 25.
[TypeScript] 타입 공간과 값 공간의 심벌 구분하기! 최근에 TypeScript 관련 단톡방에서 type과 interface 타입을 정의하고 그 값을 조건문 분기 하는 질문 글이 올라왔는데 나도 그 문제에 대해 풀어보려고 여러 가지 시도를 하다 보니 내가 TypeScript의 class, interface, type 등 아직 잘 모른다고 생각해 이펙티브 타입스크립트 책을 확인하던 중에 나에게 딱 필요한 부분이 있어서 이펙티브 타입스크립트 아이템 8을 토대로 글을 작성하려 한다. 앞으로 얘기하는 심벌은 ES6에서 추가된 자료형 심벌(symbol)이 아니라 그냥 그 값, 상징 실제 영어단어의 symbol을 뜻한다고 생각하면 좋을 것이다. 책에서는 타입스크립트 심벌(symbol)은 타입 공간이나 값 공간 중의 한 곳에 존재한다고 말한다. 그래서 심벌은 이름이 같.. 2023. 2. 26.