뉴히의 개발 로그
[TIL] 20230814 - CORS 서버오류/Access to XMLHttpRequest at '' from origin '' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. 본문
개발일지/TIL
[TIL] 20230814 - CORS 서버오류/Access to XMLHttpRequest at '' from origin '' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
뉴히 2023. 8. 14. 19:59Error
Access to XMLHttpRequest at 'https://special-imported-homburg.glitch.me/likes?likedUserEmail=heejung2@naver.com' from origin 'https://dulleo-bomi.vercel.app' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
like 컴포넌트에서 usequery로 요청을 하는데
like 컴포넌트를
map함수안에 사용해서생긴 오류였다.
{filteredCourseList.map((item) => {
return (
<St.CourseBox key={item.crsIdx} onClick={() => goToDetail(item.crsKorNm)}>
<St.CourseTitBox>
<St.CourseName>{item.crsKorNm}</St.CourseName>
<Like crsName={item.crsKorNm} crsId={item.crsIdx} /> // map함수 안에서 불려지는 Like 컴포넌트
</St.CourseTitBox>
<St.CourseInfo>
{item.crsCycle} Lv.{item.crsLevel}
</St.CourseInfo>
<St.CourseInfo>{item.sigun}</St.CourseInfo>
<St.CourseInfo>
{item.crsContents
.replace(/[<br>'-]/g, '')
.split('-')
.join('')}
</St.CourseInfo>
</St.CourseBox>
);
})}
Like 컴포넌트에서 useQuery 사용
const { data } = useQuery(['likes', crsId], getLikes);
반복되는map 안에서 비동기 함수 요청하면안된다. map돌면서 계속 요청되기 때문에
상위 컴포넌트에서 불러와서 프롭스로 내려줘서 써야한다
또한 여러번 광클릭을 하면 한번에 많은양의 요청이 들어가면 이또한 서버에서 막을 수 있다.
그래서 오류 현상이 나타낫다 안나타낫다.
const { data: likes } = useQuery(['likes'], getLikes);
.
.
.
<St.CourseListContainer>
{filteredCourseList.map((item) => {
return (
<St.CourseBox key={item.crsIdx} onClick={() => goToDetail(item.crsKorNm)}>
<St.CourseTitBox>
<St.CourseName>{item.crsKorNm}</St.CourseName>
<Like crsName={item.crsKorNm} crsId={item.crsIdx} likeList={like} />
</St.CourseTitBox>
.
.
.
이렇게 상위 컴포넌트에서 불러와서 porps로 내려줘서 사용해야한다
'개발일지 > TIL' 카테고리의 다른 글
[TIL] 20230822 - useEffect의 실행 순서 (0) | 2023.08.22 |
---|---|
[TIL] 20230821 - img 태그 src 속성값 타입 오류 (0) | 2023.08.21 |
[TIL] 20280812 - 타입스크립트 타입오류, undefined일 수 있습니다 (0) | 2023.08.12 |
[TIL] CORS 오류 node.js 서버 만들어서 요청 데이터 받기 (0) | 2023.08.10 |
[TIL] 20230809 - 리액트 타입스크립트 data type/supabase (0) | 2023.08.09 |