회고

항해99 5주차 회고

dev정리 2022. 10. 23. 18:15

이번주 키워드 Axios

 

 

Axios 공식문서

 

시작하기 | Axios Docs

시작하기 브라우저와 node.js에서 사용할 수 있는 Promise 기반 HTTP 클라이언트 라이브러리 Axios란? Axios는 node.js와 브라우저를 위한 Promise 기반 HTTP 클라이언트 입니다. 그것은 동형 입니다(동일한 코

axios-http.com

Axios란?

Axios는 node.js와 브라우저를 위한 Promise 기반 HTTP 클라이언트 입니다. 그것은 동형 입니다(동일한 코드베이스로 브라우저와 node.js에서 실행할 수 있습니다). 서버 사이드에서는 네이티브 node.js의 http 모듈을 사용하고, 클라이언트(브라우저)에서는 XMLHttpRequests를 사용합니다.

 

 

공식문서는 역시 어렵다.

결국 클라이언트와 서버의 Rest API통신을 하려고 쓰는 라이브러리인 것을 왜이렇게 어렵게 설명하는가?

그래서 그냥 jquery의 ajax와 같은 기능을 한다고 이해하고 넘겼다.

 

 

이번주 과제는 팀으로 진행하여 진행과정을 블로그에 쓰지않았다.

 

GitHub - minhyeonhong/w5-todolist: hanghae99 Week 5, team 2

hanghae99 Week 5, team 2 . Contribute to minhyeonhong/w5-todolist development by creating an account on GitHub.

github.com

과제 깃허브다.

 

이번주는 정말 알게 된게 많다.

깃과 깃허브도 어느정도 다룰수있게 되었다.

 

리듀서의 미들웨어 개념을 알게되어 리듀서에서 비동기 처리를 할수있게 됐다.

이 개념을 알기 전에는 Axios사용할때마다 promise나 async로 비동기 처리를 매번 해줘야해서 코드도 길고 난잡했는데

리듀서에 thunk를 사용하여 Axios를 함수로 처리하니 한결 간편하고 코드도 깔끔해졌다.

 

.env로 환경변수를 설정하여 개발모드와 배포모드를 나누고 API주소를 환경변수로 설정하고

Redux dev툴을 개발모드에서만 노출되도록 할수있게 됐다.

 

아쉬운건 vercel을 사용해 배포해서 github에도 .env파일을 올렸다 다른 방법이 있을거같은데 찾아 봐야겠다.

axios를 연습하고 싶어서 json서버에 insert한후 get으로 json서버의 데이를 다시 불러온뒤 state를 변경했다.

이러면 퍼포먼스가 안나오겠지...

다음번엔 리듀서와 엑스트라 리듀서를 잘 섞어서 써야겠다.