[TIL] 2022-10-20

민석·2022년 10월 20일
0

TIL

목록 보기
39/87

Fact (사실)

코드숨 스프린트
웹 api 디자인 4장 스터디
코딩테스트

Feeling (느낌)

코드숨 스프린트

토큰만료시 다시로그인해달라는 alert를 띄우는 작업을 맡았습니다
제가 진행할 방향은 이랬습니다
axios Interceptors를 이용해 401에러일땐 alert를 띄어주는 dispatch를 발동시킨다
이과정에서 2가지 문제점이있었습니다

  1. Interceptors 안에서 dispatch를 사용하니 그냥 에러가 뜨더라구요
    이런저런고민을하다 윤석님이 store가 뭘하는지 알아보라하시구 store파일안에 getState, dispatch가 들어있더라구요.
    이렇게 사용하는거구나 왜 생각을 못했지했습니다..

  2. 아래 코드에서 응답데이터가 왔을경우 return respons를 해주는데
    저는 이렇게하면 각각의 api에서 응답성공했을때 처리가 안먹히는줄알았습니다
    그래서 구조분해할당으로 { data } 를 return해줬던 부분들을 추적해
    다 바꿔주는 번거로운 작업을했는데 코드리뷰과정중 제가 Interceptors를 제대로 이해하지않고 사용했다는 것을 알게되어서 반성하는 하루였습니다

axios.interceptors.response.use(function (response) {
    return response;
  }, function (error) {
    return Promise.reject(error);
  });

웹 api 디자인 4장 스터디

4장에선 api 명세 포맷에 대한 내용을 다뤘습니다
작업을해보며 api명세포맷을 사용해본적은 스웨거만 있고 그냥 이런식으로 설명해주는구나 하고 넘어가는정도의 주제였는데 이번기회에 명세포맷이란 뭔지? 사용하는 이유? 는 뭔지에 대해 알게되었습니다
지금은 프론트만해서 직접만들어볼일은 드물지만 나중에 api를 만들어본다면 도움이 될듯합니다!
정리한글 은 여기에있습니다

코딩테스트

피보나치 문제에 대해서 풀었는데 1시간동안 피보나치의 개념을 잘몰라 이해하는데 대부분의 시간을 보냈던거같습니다.
그냥 단순히 재귀로만 풀면 안되는데 재귀함수 -> 꼬리재귀로 변경 -> while로 변경하는 설명을 들은뒤 다시 풀어봤으나 여전히 아직 어렵네요.

Finding (교훈)

오늘 axios interceptors 사용시 잘못이해해서 사용하는 바람에 너무 많은 시간을 뺏겼습니다.
공식문서에서 설명하는 양도많지않고 그냥 단순히 이렇게 사용하는구나 생각하고 바로 사용한점이 화근이였네요
앞으론 공식문서 코드예제에서 주석도 꼼꼼히 읽어봐야겠습니다

반성하는 하루였습니다..

profile
안녕하세요 프론트엔드 개발자 양민석입니다.

0개의 댓글