types任何没有下标成员Swift 3.0

试图转换一个函数,使其与Swift 3.0兼容。 必须将参数jsonAnyObjectAny

 fileprivate func checkForAuthorizationFailure(_ json: Any) -> Bool { let responseMessage = json["response"]! as? String if responseMessage == "Unauthorized. Invalid token or email." { return true } return false } 

然而在行: let responseMessage = json["response"]! as? String let responseMessage = json["response"]! as? String let responseMessage = json["response"]! as? String我现在得到的错误: “任何types没有下标成员” 。 我在这里做错了什么?

在使用下标之前,必须将Any转换为AnyObject。

 fileprivate func checkForAuthorizationFailure(_ json: Any) -> Bool { let responseMessage = (json as AnyObject)["response"]! as? String if responseMessage == "Unauthorized. Invalid token or email." { return true } return false }