2016-09-10 4 views
1

저녁, 나는 APIClient를 만들기 위해 노력하고있어,하지만 난 경고에 문제가 있어요 : APIClient.swift:53:81: Cast from 'Data' to unrelated type '[String : Any]' always fails스위프트 3.0 : JSON 데이터 [문자열 : 어떤]

난이 코드에서 데이터JSON (사전 [String : Any])으로 변환하려고합니다.

컴파일러는이 캐스트가 가능할 수 있는지 여부를 알 수 없으므로 오류가 발생하지만 작동 여부는 확실합니다. 그렇다면이 경고를 피하려면 어떻게해야하며 더 안전한 코드를 작성하려면 어떻게해야합니까?

case 200: 
     do { 
      let json = try JSONSerialization.data(withJSONObject: data!, options: []) as? [String : Any] 
      completion(json, HTTPResponse, nil) 
     } catch let error { 
      completion(nil, HTTPResponse, error) 
     } 
+1

let json = try JSONSerialization.jsonObject(with: data!, options: []) as? [String : Any] 

감사합니다. – Moritz

+2

에릭 고마워요! –

답변

3

올바른 방법은 : 당신은 잘못된 방법을 사용하고 Eric Aya

+0

"?" 시도한 후에 컴파일러는 "여기에서 던진 오류는 처리되지 않습니다."라는 오류를 던질 가능성이 있습니다. –

관련 문제