-
Notifications
You must be signed in to change notification settings - Fork 48
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
경북대 FE_이정민_3주차 과제 Step3 #87
base: userjmmm
Are you sure you want to change the base?
경북대 FE_이정민_3주차 과제 Step3 #87
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
1단계에서 구현한 api 호출 로직이 axios + react-query로 수정되지 않았네요!
확인 후 수정해주시면 좋을 것 같습니다.
그리고 지난 번 리뷰와 동일하게 node_modules를 지우고, npm install후 프로젝트를 실행하시면 정상적으로 시작이 안될건데요,
axios와 react-query가 package.json에 의존성으로 명시되지 않았는데 어떻게 개발을 하고 계신걸까요...??
개발하고계신 환경에서 package.json 내에 axios와 react query가 의존성으로 명시되어 있나요?? 확인 부탁드려요!
안녕하세요 멘토님,
step3의 기능 요구 사항까지 구현해서 제출합니다!
다음은 step4 질문 답변입니다.
질문 1. CORS 에러는 무엇이고 언제 발생하는지 설명해주세요. 이를 해결할 수 있는 방법에 대해서도 설명해주세요.
Cross-Origin Resource Sharing의 약어로, 동일한 출처의 리소스에만 접근하도록 제한 하는 "동일 출처 정책"을 의미합니다.
이는 웹페이지가 다른 프로토콜, 호스트명, 포트 등에서 제공하는 리소스를 요청할 때 발생합니다. 웹 브라우저에서는 자동으로 쿠키가 첨부된다는 특징이 있어 보안상의 이유로 해당 정책이 발생하게 되었습니다.
해결 방법은 프록시 서버를 이용하거나 http-proxy-middleware를 사용, 서버에서 CORS 헤더를 설정해서 다른 출처의 요청도 허용할 수도 있습니다.
질문 2. 비동기 처리 방법인 callback, promise, async await에 대해 각각 장단점과 함께 설명해주세요.
react query는 전역 상태 라이브러리를 사용할 때 로컬과 브라우저에서 각각 사용하는 데이터가 섞이는 일들을 방지해준다. 또한 데이터가 변경될 때 자동으로 re-fetch하여 최신 데이터를 유지한다. 또한 캐싱 기능을 사용해 훨씬 빠르게 동작할 수 있도록 돕는다.
queryKey는 각 쿼리를 고유하게 식별하는 역할을 한다. 따라서 이 값을 기반으로 데이터를 캐시에 저장하고, 쿼리를 무효화하여 최신 데이터를 가져온다.
좋은 질문들로 다시 한 번 구현에 대해 깊은 생각을 할 수 있도록 도와주셔서 감사합니다 :)