데이터 구조를 확인하자
비동기 문제인 줄 알았는데, 물론 공부가 돼서 좋았지만 받은 데이터를 제대로 확인하지 않아서 발생한 문제였다.
매번 확인했는데 이번에는 왜 안했지! 몇일동안 해메다가 발견하고 나서 허탈했다.
const responseKakao = async result =>{
// ...생략
const res = await axios.post(`${url}/user/kakao`, body, headers)
const {success, data} = res // 여기가 문제다!!!!
if(success==true){
localStorage.setItem("token", data.token)
window.location.reload()
}
else if(success==false){
alert("카카오 로그인에 실패하였습니다.")
}
else{
console.log("대앵")
}
}
서버에 요청한 데이터를 res
로 받아오는데, 이 res
는 아래와 같이 넘어온다.
계속 대앵만 나왔었는데, 받은 데이터의 구조를 보니 res
에 sucess
가 없으니 당연히 저 if문과 else if문에 걸릴리가 없다.
res.data
안에 sucess
와 내가 원하는 data
를 받아오는 구조로 되어있으니 될리가 없는 것..ㅎ
위의 코드에서 4번째줄만 아래와 같이 코드를 수정해주면 된다.
const {success, data} = res.data
너무 사소해서 부끄럽기까지한 해결..암튼 속시원하다.
덕분에 비동기 처리 공부했다😊
Author And Source
이 문제에 관하여(데이터 구조를 확인하자), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@zudy/데이터-구조를-확인하자저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)