[TIL] 7주차 클론 코딩ㅣReact + Spring boot 연동 에러 모음집
클론 코딩 [항해bnb] 진행 상황
내일 발표를 앞두고,
드디어 오늘! 프론트엔드와 백엔드의 결과물을 합쳐 보기로 했다.
지난 미니 프로젝트 때 React와 Spring Boot 연동을 하면서 너어어어무 많은 에러를 마주쳤기 때문에
이번에도 단단히 각오하고 덤벼들었다.
오늘의 에러 모음집
왜 갑자기 LocalDateTime이 배열로?
Postman으로 조회 테스트 중에 생성날짜, 수정날짜 부분이 배열로 나오는 이슈가 발생했다.
팀원분이 빠르게 해결책을 찾아 적용해 주었다.
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Seoul")
@JsonFormat을 ResponseDto 쪽에 작성해 주면 해결!
📚 참고자료
LocalDateTime 배열로 나오는 문제
위의 이미지와 같이 LocalDateTime 으로 createDate 시간을 Json으로 받아오는 과정에서 배열로 끊어져서 나오는 이슈 발생@JsonFormat을 엔티티나, Response객체에 LocaldateTime 필드에 넣어주면 된다.
velog.io
좋아요를 눌렀는데 왜 그대로지?
프론트엔드와 연동 후, 숙소 좋아요를 눌러도 바로 반영되지 못하는 이슈가 발견되었다.
프론트 쪽에서는 좋아요 여부 확인용 api를 따로 만드는 게 어떤지 제안했지만
이게 과연 본질적인 해결방법일까?
고민 끝에 좋아요 API 요청의 Response로 성공 여부, 해당 Room의 id, 좋아요 여부를 함께 반환해 주기로 하였다.
프론트 쪽에서도 OK 하였고, 적용해 보니 아주 잘 작동하는 걸 확인할 수 있었다!
키워드 검색과 필터링이 안된다?
인증/인가를 받아야만 가능하도록 설계되었기 때문..!
지난 기술 매니저님의 조언으로 비회원용 숙소 전체 조회 API는 따로 만들었으나
미처 키워드 검색과 필터링까지는 생각하지 못하였다.
부랴부랴 필터링과 검색도 비회원용 API를 작성하여 해결!
데이터를 작성할 때 왜 계속 에러가 뜨는가!
에어비앤비의 숙소 데이터를 활용하여
우리 서비스에도 유의미한 데이터를 채워 넣기로 하였다.
Postman으로 데이터 작업을 진행하던 중 다음과 같은 에러를 마주했다.
HttpMessageNotReadableException: JSON parse error
이유는 데이터타입을 제대로 맞춰주지 않았기 때문!
나는 서버로 넘어오는 데이터가 다 String이라고 생각했는데
그저 주고받아질 때 String 형태일 뿐, 실제로는 타입을 맞춰줘서 보내줘야 했다.
가격 부분에 쌍따옴표를 지우고 보내니 성공!
오늘의 나는
이번에도 연동 과정에서 다양한 에러를 마주치긴 했지만,
팀원들 덕분에 비교적 빠르게 해결할 수 있었다.
다 해놓고 정신 차리니 밤이긴 했지만...
내일 발표까지 힘내보자!