[TIL]
[TIL] 2024.01.31 Product-Resume
재호링
2024. 1. 31. 21:04
오늘의 문제점
1. 객체 구조분해 할당
const { authorization } = req.cookies;
위 부분은 authorization을 추출해오는 코드이다.
보통 cookie는 'Authorization' 헤더에 담겨 전달되는데
이 문법 하나로 전달되는게 신기해서 더 알아봤다.
const authorization = req.cookies.authorization
es6 문법이 나오기 전에는 위 코드 처럼 썼었는데,
객체 구조분해 할당을 사용할 수 있음으로써 간결함과
가독성이 올라갔다고 볼 수 있다.
2. 'custom-secret-key'
const decodedToken = jwt.verify(token, 'custom-secret-key');
'custom-secret-key'는
post 요청시 비밀번호를 전송할때 같이 검증되는
비밀 키 인 것으로 이해를 했었는데, 사실은 클라이언트와
서버로 전송되는 post 요청과는 아무 상관 없는 키였다.
'custom-secret-key' << 요놈은 그냥
서버 측에서 JWT를 생성하고 검증하는데 사용되는 비밀키일 뿐
괜히 이놈이 어떻게 연결되는지 파악하고 있었는데 간단한 것이였다,,
3. Prisma 에 enum을 어떻게 쓸까?
이력서 생성 API
- API 호출 시 이력서 제목, 자기소개 데이터를 전달 받습니다.
- 이력서 데이터의 상태는 다음과 같은 상태들 중 1개를 가지게 됩니다.
- 서류 지원 완료 APPLY
- 서류 탈락 DROP
- 서류 합격 PASS
- 1차 면접 INTERVIEW1
- 2차 면접 INTERVIEW2
- 최종 합격 FINAL_PASS
- 이력서 등록 시 기본 상태는 지원 완료 (APPLY)입니다.
이 요구사항을 보고선 enum이 필요하겠다고 생각들었다.
prisma에서는 어떤식으로 enum을 쓰는지 구글링해보았다
enum을 블록으로 준다음에 타입에 할당시켜주면 되는 것이였다.
< 이력서 등록 시 기본 상태는 지원 완료 (APPLY)입니다 >
부분은 @default 를 이용해 기본값으로 주었다.
회고
제대로 백엔드라 재밌는 것 같다.
서버의 동작 원리를 이해하는 챕터라
배울때는 상당히 어렵게 느껴졌는데
직접 연결해보고 프로젝트를 진행해보니
문제점도 많지만 배워가는게 많은 것 같다.