inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[리뉴얼] React로 NodeBird SNS 만들기

SSR시 쿠키 공유하기

이 에러가 떴는데

5949

hyese ch

작성한 질문수 17

0

Error: Error serializing `.initialState.user.loadMyInfoError` returned from `getServerSideProps` in "/". Reason: `undefined` cannot be serialized as JSON. Please use `null` or omit this value.

This error happened while generating the page. Any console logs will be displayed in the terminal window.
그러니까 /의(가장 최초에 렌더링되는 index.js) getServerSideProps부분에서 '.initialState.user.loadMyInfoError'를 직렬화하는 동안 에러가 생겼다는 의미 같은데... undefined는 JSON으로 serialize 될 수 없고 그러니 차라리 null을 사용하던가 아니면 이 값을 생략하라는 이야기로 이해했습니다.
어디에서 undefined가 생겼는데 어떻게 알 수 있을까요?

Next.js express redux nodejs react

답변 10

1

제로초(조현영)

response는 보통 있는데요. console.dir(error) 해보면 정확한 구조를 알 수 있습니다.

0

hyese ch

네ㅠㅠ name으로 할 때만 작동이 되는데 error 아래에 name도 있고 response도 있는 구조 아닌가요?

0

제로초(조현영)

error.response가  undefined인건데요. 서버에서 에러가 났을 때 응답을 안 보내나요? 

0

hyese ch

해결했습니다!! 액션 디스패치시 error: error.response.data 말고 error.name으로 했더니 해결이 되는데 왜 그러는 걸까요?

0

hyese ch

이 이 부분인 것 같은데... 원인을 모르겠습니다. log를 찍어보아도

The above error occurred in task loadMyInfo

    created by takeLatest(LOAD_MY_INFO_REQUEST, loadMyInfo)

    created by watchLoadMyInfo

    created by userSaga

    created by rootSage

Tasks cancelled due to error:

askSaga

TypeError: Cannot read property 'data' of undefined

    at loadMyInfo (webpack-internal:///./sagas/user.js:27:27

이런 식으로만 나오고요 ㅠㅠ

0

제로초(조현영)

둘의 데이터가 undefined가 들어간 느낌인데요. 백엔드 서버쪽에서 저 두 라우터에 해당하는 곳에서 return하는 데이터 값을 console.log해보세요.

0

hyese ch

export const getServerSideProps = wrapper.getServerSideProps(
async (context) => {
// Cookie
const cookie = context.req ? context.req.headers.cookie : '';
axios.defaults.headers.Cookie = cookie;
// context.store.dispatch({
// type: LOAD_MY_INFO_REQUEST,
// });
// context.store.dispatch({
// type: LOAD_ASKS_REQUEST,
// });
context.store.dispatch(END);
await context.store.sagaTask.toPromise();
},
);

export default Home;
이렇게 둘 다 없애야 에러가 안 납니다...ㅠㅠ

0

제로초(조현영)

아, 백엔드 서버 로그 말고 프론트 서버 로그를 보셔야겠네요. 어디까지 지웠을 때 에러가 안 나나 확인해보세요.

0

hyese ch

프론트에는

xport const getServerSideProps = wrapper.getServerSideProps(
async (context) => {
// Cookie
const cookie = context.req ? context.req.headers.cookie : '';
axios.defaults.headers.Cookie = cookie;
context.store.dispatch({
type: LOAD_MY_INFO_REQUEST,
});
context.store.dispatch({
type: LOAD_ASKS_REQUEST,
});
context.store.dispatch(END);
await context.store.sagaTask.toPromise();
},
);
이렇게 작성했는데 위의 loadMyInfo 부분을 지워도 아래쪽에서
같은 에러가 다시 발생합니다.
서버쪽에 기록된 에러는 DB sequealize 부분 로그를 제외하고는
기록된 것이 없는 혹시 백엔드 서버 에러를 볼 수 있는 방법이
따로 있을까요?

0

제로초(조현영)

getServerSideProps에서 loadMyInfo를 제거하면 에러가 발생하지 않나요?

제 생각에는 백엔드 서버에 에러가 기록되었을 것 같습니다.

넥스트 버젼 질문

0

77

2

로그인시 401 Unauthorized 오류가 뜹니다

0

88

1

무한 스크롤 중 스크롤 튐 현상

0

174

1

특정 페이지 접근을 막고 싶을 때

0

103

2

createGlobalStyle의 위치와 영향범위

0

95

2

인라인 스타일 리렌더링 관련

0

90

2

vsc 에서 npm init 설치시 오류

0

146

2

nextjs 15버전 사용 가능할까요?

0

158

1

화면 새로고침 문의

0

121

1

RTK에서 draft, state 차이가 있나요?

0

153

2

Next 14 사용해도 될까요?

0

452

1

next, node 버전 / 폴더 구조 질문 드립니다.

0

349

1

url 오류 질문있습니다

0

211

1

ssh xxxxx로 우분투에 들어가려니까 port 22: Connection timed out

0

372

1

sudo certbot --nginx 에러

0

1272

2

Minified React error 콘솔에러 (hydrate)

0

469

1

카카오 공유했을 때 이전에 작성했던 글이 나오는 버그

0

246

1

프론트서버 배포 후 EADDRINUSE에러 발생

0

325

1

npm run build 에러

0

518

1

front 서버 npm run build 중에 발생한 에러들

0

381

1

서버 실행하고 브라우저로 들어갔을때 404에러

0

337

2

css 서버사이드 랜더링이 적용되지 않아서 문의 드립니다.

0

286

1

팔로워 3명씩 불러오고 데이터 합쳐주는걸로 바꾸고 서버요청을 무한으로하고있습니다.

0

237

2

해시태그 검색에서 throttle에 관해 질문있습니다.

0

201

1