JWT 설정 후 JSON 데이터가 문자열로 옵니다...
70
작성한 질문수 19
📤 before request
jwtUtil.ts:30 ✅ Response Received
jwtUtil.ts:34 📦 Content-Type: application/json
jwtUtil.ts:35 🧾 typeof res.data: string
content-type은 json 형식으로 맞춰 주었는데 정작 데이터가 String으로 와서 list에 뿌려주지를 못하고 있습니다.
Postman으로 확인했을 때는 정상적으로 JSON 데이터를 반환받는데 리액트에서 확인할려면 res.data가 "{\"dtoList\":[{\"tno\":115,\"title\":\"123zzzㅋㅋㅋㅋ\",\"content\":null,\"complete\":false,\"dueDate\":\"2025-08-07\",\"writer\":\"123\"}
위와 같이 스트링 형식으로 변환되어서 들어와서 오류가 생깁니다.
어디가 문제일까요..ㅠㅠ
답변 2
0
문제는 API서버 쪽인듯 합니다.
조회하는 경우이니
API서버를 브라우저에서 호출했을때 JSON형식으로 반환되는지를 확인해 봐야할 듯 합니다.
컨트롤러에서 객체를 반환하면 기본적으로 JSON으로 변환이 되어서 전송되는 것을 먼저 체크해 보셔야 할것 같네요..
axios를 이용하시니 정상적이면 JSON.parse가 필요하지는 않으실 겁니다.
0
postman으로 응답시에 json이 정상적으로 들어와도 스프링쪽 문제일까요?
postman으로 베어러 토큰을 넣고 api/todo/list로 send하게 되면 정상적으로 json 데이터가 나오게 됩니다
0
jwt랑 시큐리티부분 gralde에서 주석처리하고 관련되어 있는 코드들 전부 주석처리 하니깐 정상적으로 리스트가 출력이 되네여.. 어디가 문제일까여 4시간 동안 디버깅하고 있는데 죽을 노릇이네여
0
예제코드와 디른점이 있을까요?
추가적인 기능이나 라이브러리 버전 문제가 가장 의심됩니다.
캐싱등을 이용해서 문제가 생기는 경우가 간혹 있긴하던데..
Jwt라이브러리 버전도 체크해주세요
0
jwt 버전이 강사님 gradle에 있는 버전과 다르길래 바꾸고 7장에서 한 모든 코드를 강사님이 하신 코드로 바꾸고
8장에서 한 리액트 코드도 강사님이 하신 코드로 전부 바꿧는데도 똑같이 json이 string으로 오네요 ㅎㅎ...
0
안녕하세요, 인프런 AI 인턴입니다.
영우님이 겪고 계신 문제는 주로 서버에서 클라이언트로 데이터를 전송하는 과정에서 JSON 데이터가 문자열 포맷으로 응답되어 오는 상황에 관한 것입니다. 이는 주로 서버 또는 HTTP 클라이언트 설정에서 발생할 수 있는 유사한 문제입니다.
문제 원인 및 해결 방안:
서버 측 설정 확인:
- 서버 응답 헤더에
Content-Type이'application/json'으로 명확히 설정되었는지 확인하세요. 이를 통해 서버가 반환하는 데이터가 JSON 형식으로 해석될 수 있습니다.
- 서버 응답 헤더에
React 사용 중 Axios 설정 확인:
- Axios를 사용 중이시라면, 요청 헤더에
'Content-Type': 'application/json'이 올바르게 설정되어 있는지 확인하시고, 추가로responseType: 'json'옵션이 필요할 수 있습니다.
- Axios를 사용 중이시라면, 요청 헤더에
데이터 파싱 추가:
- 만약 여전히 문자열로 응답이 온다면, React 컴포넌트에서 다음과 같이 수동으로 JSON 파싱을 시도해 볼 수 있습니다:
useEffect(() => { axios.get('api_url') .then(response => { const jsonResponse = JSON.parse(response.data); // 여기서 jsonResponse를 사용하여 상태 업데이트 등 수행 }) .catch(error => { console.error('데이터를 파싱하는 동안 오류가 발생했습니다:', error); }); }, []);
- 만약 여전히 문자열로 응답이 온다면, React 컴포넌트에서 다음과 같이 수동으로 JSON 파싱을 시도해 볼 수 있습니다:
참고할 유사 질문 URL:
- Axios로 데이터 요청 시 문자열로 응답 문제 해결 방법: 이 게시물에서는 Axios와 백엔드 서버 간의 데이터 통신 시 발생하는 문자열 변환 문제에 대해 다루고 있습니다.
위의 방법들을 통해 문제를 해결하실 수 있기를 바랍니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
동일하게 실습하는데 이상하게 페이지를 찾지 못하네요..
0
74
2
22. REST 방식 컨트롤러 만들기(2), 29. 등록처리 부분 질문이 있습니다.
0
74
2
37강. 강의수업듣다 질문드립니다.
0
57
2
TodoDTO test 함수
0
80
3
강사님 오타 있음요
0
77
2
No 1. 교제(ppt) soruce 복붙 문제 의 건
0
95
4
No 1. 교제(ppt) soruce 복붙 문제 의 건
0
70
3
17강 문의드립니다.
0
44
1
카카오 연동설정이 이제 안되는거 같아요
0
190
2
8장 마지막 강의 시 오류
0
98
4
혹시 뭐가 문제인지 알 수 있나요?
0
87
2
챕터: React-Router 설정
0
58
2
백)TODO관련
0
56
2
마리아 db 설치중 포트를 이미 사용중이라고 합니다
0
112
2
이강의 듣고 소화시켰다면 몇년차 정도 개발자라고 할수 있을까요?
0
105
1
CSR , SSR 의 수요 궁금증 질문
0
83
2
섹션5부터...
0
73
1
간단한 코드 질문!!
0
61
2
tbl_todo 질문입니다
0
65
2
수업 외 질문인데 'tbl'이 무슨 의미인가요???
0
291
2
엔티티클래스에서 질문입니다
0
78
2
수정시 writer값이 삭제되는 오류
0
42
2
교안 31 오타 수정해주세요
0
64
2
쿠키에 accessToken, refreshToken을 담고, 조회 시에 undefined
0
80
1





