我收到此错误消息
[NSObject : AnyObject]!' is not a subtype of 'Dictionary<String, AnyObject>
我的代码
self.client.getAccessToken(code, success: { (accessTokenData:Dictionary<String, AnyObject>) -> Void in // error here
var accessToken = accessTokenData["access_token"]
self.requestMeWithToken(accessToken)
}, failure: { (error:NSError!) -> Void in
println("Quering accessToken failed \(error)")
})
请建议。
答案 0 :(得分:1)
您可以在成功完成时完全省略类型规范。你可能想要这样的东西:
self.client.getAccessToken(code, success: { (accessTokenData) -> Void in // error here
if let dict = accessTokenData as? Dictionary<String, AnyObject> {
let accessToken = dict["access_token"]
self.requestMeWithToken(accessToken)
}
}, failure: { (error:NSError!) -> Void in
println("Quering accessToken failed \(error)")
})
这只有在accessTokenData可以成功转换为[String:AnyObject]字典时才有效。
答案 1 :(得分:0)
从错误消息中,您应该将Dictionary<String, AnyObject>
更改为[NSObject : AnyObject]
。