[크래프톤 정글 3기] 12/30(토) TIL

ClassBinu·2023년 12월 30일
0

크래프톤 정글 3기 TIL

목록 보기
74/120

09:22 입실
일어났다가 잠깐 눈 감았는데 2시간 지남
다음부터는 그냥 바로 일어나자.
점심에 스벅가서 계속 공부함! 오늘 빨래도 해야 함!

argon2

argon2idargon2idv=19m=65536,t=3,p=4m=65536,t=3,p=4GG1c/0O8Tjgb3RNGRPBTnA$gqquvvzhOLrP2iNWJH489QW+0jCrY5SvChFy/sFEBB8

argon2idargon2id: 이 해시 문자열은 Argon2id 알고리즘을 사용한다는 것을 나타냅니다.
v=19: Argon2id 버전을 나타냅니다.
m=65536,t=3,p=4: Argon2id 매개변수를 설명합니다. 이것은 메모리 요구 사항 (65536KB), 반복 횟수 (3), 병렬 스레드 수 (4)를 나타냅니다.
GG1c/0O8Tjgb3RNGRPBTnA: 솔트 (Salt) 값으로, 비밀번호를 해시할 때 무작위로 생성된 값을 나타냅니다.
gqquvvzhOLrP2iNWJH489QW+0jCrY5SvChFy/sFEBB8: 실제 해시된 데이터를 나타냅니다.

솔트가 노출되어도 괜찮나?

이상적으로는 솔트는 비밀리에 보관되는 게 안전.
하지만 솔트를 추가하는 이유는 레인보우 테이블 공격 방지 목적이므로, 솔트가 노출되면 레인보우 테이블이 무용지물이 되므로 괜찮음.

블로그 수정이 어제부터 안 되다가 오늘 밤부터 됨.
못 적은 내용이 너무 많음.😤😤😤😤😤

nest

포스트 모듈 만들고 서버 만드는 중!

await 누락

  async toggleLike(id: string, userId: string) {
    if (await this.checkLikeStatus(id, userId)) {
      console.log('remove like');
      return await this.removeLike(id, userId);
    } else {
      console.log('add like');
      return await this.addLike(id, userId);
    }
  }

계속 이상하게 동작해서 보니까 조건문에 await가 누락되어 있었다.

bearer

JWT전송할 때 bearer 붙이는 이유는?

Authorization: Bearer <token>

GPT

"Bearer"라는 단어의 어원은 영어에서 "to bear"라는 동사에서 유래했습니다. "to bear"는 "가지고 다니다", "소지하다", "운반하다"라는 의미를 가지고 있습니다. 이러한 의미에서, "Bearer"는 "소지자" 또는 "보유자"를 의미하는 명사형으로 변환된 것입니다.

sweager에 토큰 추가하기

// 스웨거 설정
export const swaggerConfig = new DocumentBuilder()
  .setTitle('My Today API')
  .setDescription('My Today API description')
  .setVersion('1.0')
  .addBearerAuth() // 여기
  .build();


// 컨트롤러에 @ApiBearerAuth() 추가
  @UseGuards(AccessTokenGuard)
  @ApiBearerAuth()
  @Patch(':id')
  async update(
    @Param('id') id: string,
    @Body() updatePostDto: UpdatePostDto,
    @Req() req: any,
  )

컨트롤러와 서비스 분리

구현만 목적에 두고 코딩하다 보니 컨트롤러에 모든 로직이 다 들어가 있었다.
컨트롤러는 핸들러 역할만 하고 실제 비지니스 로직은 서비스로 이관하는 작업 중.

컨트롤러

  • HTTP 요청 처리 및 응답 반환
  • 요청 데이터 추출
  • 요청 유효성 검사
  • 서비스 레이어 호출
  • 접근 제어

서비스 레이어

  • 비니지스 로직 처리
  • 결과 반환: 컨트롤러로 반환

레포지토리

  • 데이터베이스 상호 작용
  • CRUD
  • 데이터 접근 추상화
  • 데이터베이스 쿼리
  • 데이터베이스 연결 관리

테스트 코드

간단한 테스트 구현해보자!

2개의 댓글

comment-user-thumbnail
2023년 12월 30일

정글 알아보다가 TIL 포스팅 발견했는데, 매일 꾸준히 업로드 하다니.. 대단하고 멋지십니다!
파이팅하십쇼!!

1개의 답글