개발55 [NestJS] interface, type, class 도입기 (언제 뭘쓰지??) 들어가며처음 TypeScript를 시작했을 때만 해도 interface, type, class의 차이점을 명확히 이해하지 못했습니다. 특히 NestJS로 백엔드 개발을 시작하면서는 더 큰 혼란이 왔죠."어? 근데 NestJS에서는 왜 class를 이렇게 많이 쓰지?""interface랑 class가 왜 이렇게 따로 노는 것 같지?"기본부터 차근차근: 세 가지 방식의 차이// 1. interface: 타입 정의의 기본interface User { id: string; name: string; email: string;}// 2. type: 유연한 타입 정의type UserResponse = { user: User; token: string;} | null;// 3. class: .. 2025. 1. 22. 로컬 환경에서 웹훅(Webhook) 테스트하기 - ngrok 사용 가이드 오늘은 로컬 환경에서 배포없이 웹훅 테스트를 하는 방버에 대해 작성해 보려고 하는데요!가장 고민이 어떻게 배포 없이 내 로컬 서버에 웹훅 메세지를 받을 수 있을까 였습니다. 그러다가 ngrok을 알게 됐고 무료로 특정 포트에 url 값을 부여할 수 있다는 점이 굉장히 매력 있었습니다. 사용법도 굉장히 간단합니다. 1. 간편한 설정과 실행설치는 패키지 매니저로 한 줄로 가능 실행도 한 줄로 가능GUI 클라이언트 제공으로 비개발자도 쉽게 사용 가능2. 뛰어난 개발자 경험실시간 트래픽 모니터링 대시보드 제공모든 요청/응답의 헤더, 본문을 보기 좋게 포매팅하여 표시응답 시간, 상태 코드 등 성능 지표 실시간 확인받은 웹훅을 그대로 다시 보낼 수 있는 재전송 기능특정 요청의 모든 정보를 팀원과 공유 가능3. 다양.. 2024. 12. 22. AWS Lambda에서 axios 사용하기: 삽질 기록과 해결 방법 오늘은 AWS Lambda에서 axios를 사용하면서 겪었던 시행착오와 삽질 기록을 정리해보려고 합니다. 1. Lambda Layer의 node_modules에 직접 올리기예전부터 사용하던 방식입니다. 단순히 node_modules 폴더를 압축해서 Layer에 올리는 방식입니다:npm install axioszip -r axios-layer.zip node_modules하지만 이 방식은 문제가 있습니다:Lambda가 모듈을 제대로 찾지 못할 수 있음패키지 구조가 Lambda 환경과 맞지 않을 수 있음실제로 필자가 예전에는 이 방식으로 했는데 이번에는 안 돼서 고생함2. nodejs 폴더 구조를 사용하는 방식현재 AWS에서 권장하는 방식입니다. node_modules를 nodejs 폴더 안에 넣어 구조화하.. 2024. 12. 20. AWS API Gateway와 Lambda 연동하기: Cognito로 보안까지 챙기자!🚀 (1편 Lambda 세팅) 안녕하세요, AWS 서비스들로 아키텍처를 구축하면서 겪은 경험을 공유하려고 합니다. 오늘은 API Gateway, Lambda, 그리고 Cognito를 활용한 안전하고 확장 가능한 서버리스 아키텍처 구축 이야기를 들려드릴게요! 왜 이런 구성을 선택했나요? 🤔"API는 누구나 호출할 수 있어야 하지만, 아무나 호출하면 안 되죠!"이 모순적인 문장이 바로 오늘 이야기의 시작점입니다. API는 접근성이 좋아야 하지만, 동시에 보안도 챙겨야 하는 양날의 검과 같죠. 그래서 저는 다음과 같은 AWS 서비스들을 조합해서 해결책을 만들어보았습니다:Amazon API Gateway: API 요청을 받아주는 문지기 👮AWS Lambda: 실제 비즈니스 로직을 처리하는 일꾼 💪Amazon Cognito: 인증과 권한.. 2024. 12. 18. 이전 1 2 3 4 ··· 14 다음