无法使用类型为:(任何)、选项:[任意]的参数列表调用 jsonObject



我刚刚更新到 swift 3.1 和 Xcode 8.3.1,我在更新之前遇到了一个错误,这不是错误。我不知道如何解决的错误是尝试从行中的 API 解析 json 数据try! JSONSerialization.jsonObject

我描述下面的代码

public extension User {
    public static var fake: Resource<[User]> = Resource(request: { (url) -> URLRequest in
        var components = URLComponents(url: url, resolvingAgainstBaseURL: true)!
        components.path = "/v2/fake-users"
        var request = URLRequest(url: components.url!)
        request.httpMethod = "GET"
        return request
    }) { (data) -> ([User]) in
        let json = try! JSONSerialization.jsonObject(with: data, options:[]) >>>>ERRROR>>>> Cannot invoke 'jsonObject' with an argument list of type '(with: (Any), options: [Any])'
        var code = json as? [String: Any]
        let error = code?["code"] as! String?
            if error == "NOT_AUTHORIZED_EXPIRED_TOKEN" || error == "INTERNAL_ERROR"{
                let sessionController = SessionController()
                sessionController.refreshToken(refreshToken: (SessionProvider().getUserToken()?.refreshToken)!) { (error) in
                    if let error = error {
                        print("Error trying to login refreshToken: (error)")
                    } else {
                        print("login refreshToken successful")
                    }
                }
            }
            else {
                print("n code: (error)n")
            }
        let unboxer = try Unboxer(data: data as! Data)
        return try unboxer.unbox(key: "hits")
    }

你可以试试这个:

}( { (strData( -> ([User]( in

let data = strData.data(using: String.Encoding.utf8, allowLossyConversion: false)!
                let json = try JSONSerialization.jsonObject(with: data, options: [])
                print(json)

最新更新