꾸준히 안타치기

The data couldn’t be read because it is missing / 디코딩 에러 본문

iOS/문제해결

The data couldn’t be read because it is missing / 디코딩 에러

글자줍기 2022. 5. 11. 23:31
반응형

문제

Alamofire를 사용해 서버에서 데이터를 받아오고 코더블을 적용 -> 값 안옴

do catch문에 error문에 -> " The data couldn’t be read because it is missing " 라고 뜸 

dataJSON는 잘가져옴

디코딩을 했는데 이상하게 가져온값이 찍히지를 않았다. no data라고 뜨지도 않음..

 

원인

JSONDecoding 오류

위와 같은 에러는 단순히 error를 출력할 때 나오는 error라함 , JSONDecoding에러에 관련된 에러처리 코드 적용해줌

} catch let DecodingError.dataCorrupted(context) {
    print(context)
} catch let DecodingError.keyNotFound(key, context) {
    print("Key '\(key)' not found:", context.debugDescription)
    print("codingPath:", context.codingPath)
} catch let DecodingError.valueNotFound(value, context) {
    print("Value '\(value)' not found:", context.debugDescription)
    print("codingPath:", context.codingPath)
} catch let DecodingError.typeMismatch(type, context)  {
    print("Type '\(type)' mismatch:", context.debugDescription)
    print("codingPath:", context.codingPath)
} catch {
    print("error: ", error)
}

해결

구조체 변수명 오타수정 / 서버에서는 result로 보내고 있어서 받지 못하는것이 었다. 

그밖에 타입에러 서버에서 Int로 내려주는데 클라이언트에서 String으로 받는지 체크

서버에서 조회하는 데이터와 쿼리를 돌고 가져오는 데이터의 수가 일치하는지 체크

 


 JSON 다른에러

https://stackoverflow.com/questions/46795003/unexpected-nil-in-json-strings

 

Unexpected nil in JSON strings

I parse JSON in my application and some of the JSONs have nil values which I handled. However, the app still shows me the error that JSON contains nil values. My code: struct Response : Decodable {...

stackoverflow.com

 

반응형
Comments