인프런 커뮤니티 질문&답변

j44s11님의 프로필 이미지
j44s11

작성한 질문수

Next + React Query로 SNS 서비스 만들기

react-query를 사용하면서 token을 header에 전달해야 할 때

작성

·

540

1

이런 상황에서는 어떻게 해야할까요?

강사님은 queryFn 함수를 별도로 분리하는 방식인데, 해당 함수내에서는 token을 호출할 수 없을것입니다.

그렇다면 제가 생각하기에 가능한 방법은 querykey에 포함시켜서 함수에서 호출하는 방법인데...

그렇게되면 token이 필요한 모든 함수의 key 배열에 토큰을 추가시켜야 하는 작업을 해야합니다.

하지만 이것보다 더 좋은 방법이 있을지 잘 모르겠습니다.

axios 같은 경우에는 전역적으로 header에 default로 넣는다거나 하는 방법이 있는데, fetch로 하는 경우에는 위의 방법이 최선일까요?

답변 2

0

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

token이 어디에 저장되어있는 건가요? redux나 localStorage라면 그냥 불러올 수 있습니다. cookie는 서버쪽일테니 next/cookie로 가능하고요

0

fetch 관련 라이브러리 중 baseUrl, default header 설정 등 axios와 비슷한 기능을 제공해 주는 라이브러리가 많습니다.

그중에서 return-fetch라는 라이브러리를 사용했습니다. 이유는 가볍고, 잡다한 기능이 추가돼 있지 않고, 한국분인 라이브러리 컨트리뷰터의 재밌는 소개글을 보고 사용해봤습니다. 이외에도 더 많은 라이브러리가 존재합니다. 참고해 보시면 좋겠습니다.

j44s11님의 프로필 이미지
j44s11
질문자

헉 fetch 관련 라이브러리도 있는줄 몰랐네요...!! 말씀 감사합니다!

j44s11님의 프로필 이미지
j44s11
질문자

그런데 제가 fetch를 사용하려는 이유가 nextJS에서 fetch api를 확장하기 때문인데요. 다른 라이브러리들을 쓰면 이 기능을 쓸 수 없는거 아닌가요?

react-query의 기능을 적극적으로 사용하기에 fetch 라이브러리를 사용해도 괜찮지 않을까싶습니다.
react-query 없이 사용한다면 문제가 될거 같네요. 저도 궁금합니다

return-fetch의 설명 상으로는 next의 fetch 사용에 문제가 없다는 내용이 있네요.
문제 없이 사용 가능한걸로 판단됩니다.

j44s11님의 프로필 이미지
j44s11
질문자

사실 제일 궁금한건 header 값을 어떻게 전달할지 입니다.

key에 추가하는 방법밖에 떠오르는게 없네요.

j44s11님의 프로필 이미지
j44s11

작성한 질문수

질문하기