2016-11-12 66 views
1

我试图运行序列化JSON响应,但在“let json = ...”行中出现错误。错误是“模糊引用成员'jsonObject(with:options :)'”。如果有人知道如何解决这个问题,我会apprechiate它使用Alamofire序列化JSON对象

Alamofire.request("https://httpbin.org/get").responseJSON { response in 

     if let JSON = response.result.value { 

      do { 
       let json = try JSONSerialization.jsonObject(with: response.result.value!, options: .allowFragments) 

      } catch { 
       print() 
      } 

      print("JSON: \(JSON)") 
     } 
    } 

回答

1

因为response.result.value是一本字典__NSDictionaryI,而不是数据为jsonObject预期的类型。您可以轻松地从JSON检索值,无需转换为json,例如:JSON["title"]

+0

问题是,访问诸如'JSON [“title”]'这样的值是很冒险和懒惰的。您的响应JSON应该被序列化为一个swift对象,以便您可以本地交互并获得干净的代码。 –