오늘 한 일
어제, 오늘 nodemailer를 이용해 메일로 인증 코드를 보내고 멤버를 초대하는 로직을 짰다. 짜고 거의 하루종일 에러 처리하고 예외 처리하는데 시간을 많이 들였던 것 같다. 생각보다 예외처리 해줘야 할 부분이 많았고 초대를 보내는 사람, 받는사람, 초대를 보낸 board와 인증을 받아서 가입시켜주는 board 등 일치 시켜줘야 하는 부분들도 많아서 생각이 꼬였던 부분이 많았던 것 같다.
추가적으로 Slack에 자동으로 메세지를 보내는 기능을 구현했다. 생각보다 너무 간단하지만 신기하고 기분이 좋았다.
배운 부분
코드를 작성하며 알게된 부분 몇 가지를 적으려고 한다.
1. @UseGaurds(jwtAuthGuard)를 하게되면 @Request로 로그인한 사용자의 정보를 가져올 수 있다(ex:userId)
@UseGuards(JwtAuthGuard)
@Post()
async postBoard(@Request() req, @Body() boardDto: BoardDto) {
try {
const userId = req.user.id;
...
2. Dto 타입을 type으로 설정하면 typeof Dto 했을 때 object가 나온다.
3. 의존성 주입만 하면 다른 테이블의 entity만 가져와 repository를 만들 수도 있다.(심지어 테이블이 없어도 entity만 있으면 repository를 만들 수 있다)
4. oneToMany , ManyToOne의 관계에서 cascade를 설정할 때 다음과 같이 설정한다.
(부모가 지워지면 자식이 함께 지워져야 하는 경우)
( one ) cascade: true - 생략가능 한듯.
( Many ) onDelete: cascade
5. swagger 들어가는 주소 : http://localhost:포트번호/api#/
Slack 자동 메세지 보내기
https://yoonchan1121.tistory.com/142
'TIL' 카테고리의 다른 글
2024_01_17 TIL (NestJS + Socket.io(+room) + 프론트) (2) | 2024.01.18 |
---|---|
2024_01_11 TIL (2) | 2024.01.11 |
2024_01_08 TIL (1) | 2024.01.09 |
2024_01_05 TIL (1) | 2024.01.06 |
2024_01_03 TIL (1) | 2024.01.04 |