com.squareup.moshi.JsonEncodingException: Use JsonReader.setLenient(true) to accept malformed JSON at path $

undefined·2023년 11월 22일
0

삽질로그

목록 보기
6/7

앱을 만드는 중에 위 에러가 발생했다. retrofit객체 생성 시

.addConverterFactory(MoshiConverterFactory.create(moshi))

저 부분도 잘 넣어주었는데도 발생했다.

나의 경우에는 api응답을 받을 때 발생했는데, 서버에서 내려주는 값이 json형식이 아니어서 발생했다.

서버 응답 타입을 json형식으로 바꿔주니 해결되었다.

        Map<String,Object> result = new HashMap<>();
        result.put("status",200);
        result.put("data",member.getId());
        result.put("message","Success");
        return new ResponseEntity<>(result, HttpStatusCode.valueOf(HttpStatus.OK.value()));
{
    "data": "test2",
    "message": "Success",
    "status": 200
}

그 외에도

com.squareup.moshi.JsonDataException: Expected a string but was BEGIN_OBJECT at path $

같은 오류들이 발생하기도 하는데 데이터 형식이 올바른지 확인해봐야 한다.

profile
이것저것 하고 싶은 게 많은 병아리 개발자

0개의 댓글