30일차) [React/JS] RefreshToken / MSA / Observable

김재범·2022년 8월 22일
0

코드캠프

목록 보기
38/46
post-thumbnail

✍RefreshToken

AccessToken의 만료 기한을 대체하여 새롭게 받는 AccessToken을
RefreshToken이라 한다.

  • RefreshToken의 기한은 2주~ 1개월 정도의 긴 만료기한

  • 보안이 강한 Cookie에 담는다.

💡 RefreshToken을 쿠키에 담는 이유

httpOnly , secure와 같은 옵션을 설정하여 보안을 강화할 수 있다.

httpOnly : 브라우저에서 Javascript를 이용해 쿠키에 접근할 수 없고, 통신으로만 해당 데이터를 주고받을 수 있습니다.

secure : https 통신 시에만 해당 쿠키를 받아올 수 있습니다.

✍마이크로 서비스 아키텍쳐(MSA)

백엔드 서비스를 작은 단위로 쪼개 서로 다른 컴퓨터에 담는 서비스 구조

MSA의 장점

  • 각각의 서비스 필요에 따라 다른 언어나 구조로 생성가능
  • 백엔드 서버가 다운되도 서비스 전체가 다운되지는 않는다

MSA의 단점

  • 서비스 구조 복잡

✍Observable

💡 연속적인 비동기 작업을 도와주는 타입

export default function ObservablePage() {
  const onClickButton = () => {
    // new Promise(() => {});

    // new Observable(() => {});

    from(["1번 useQuery", "2번 useQuery", "3번 useQuery"]) // fromPromise
      .flatMap((el) => from([`${el} 결과에 qqq 적용`, `${el}결과에 zzz적용`]))
      .subscribe((el) => console.log(el)); // 각각의 요청에 대해
    // 실행해줘(subscribe)
  };

fromPromise

리프레시토큰을 생성할 때 onError라는 함수를 사용하는데
return 타입으로 Observable타입을 받는다.

그러나, 리턴해주는 값이 promise타입이기 때문에
☑️이를 Observable타입으로 바꿔주는 것이 fromPromise

profile
지식을 쌓고 있습니다.

0개의 댓글