본문 바로가기
콤퓨타/캡스톤프로젝트

캡스톤프로젝트 (6) - 안드로이드-서버 간 Type 불일치 문제

by 다_녤 2024. 5. 18.
반응형

Retrofit2으로 유저정보에 대한 GET Request를 보내고 response를 확인하는 로직을 짰는데 아래와 같은 에러가 발생했었다.

 

내용인 즉슨, NumberFormatException으로 서버에서 받은 값의 자료구조는 Int로 예상하였으나, 막상 받은 값이 "285.155"라는 실수형태의 값이라는 내용이다.

 

Network Error : java.lang.NumberFormatException: Expected an int but was 285.155 at line 1 column 166 path $.totalWalkingDistance

 

그럼 이런 문제는 왜 벌어진걸까?

Expected 된 타입인 Int는 사실 걸은거리를 다루기 위한 Double 형 데이터였는데, 서버와 연결된 Swagger에서 단순 '0'으로 표기하다보니 Int로 구현되었었다.

 

단순하게는 Type지정오류이고, 근본원인을 살펴보면 swagger에 명세가 조금 부족했다고 할 수 있다.

 

명세를 잘 작성하자.. 라는 교훈..

 

 

반응형