无法强制将“GraphRequestResult<GraphRequest>”类型的值转换为“[Any]”类型

Posted

技术标签:

【中文标题】无法强制将“GraphRequestResult<GraphRequest>”类型的值转换为“[Any]”类型【英文标题】:Cannot convert value of type 'GraphRequestResult<GraphRequest>' to type '[Any]' in coercion 【发布时间】:2016-09-27 07:33:44 【问题描述】:

我正在使用新的 facebook 图表请求:

let parameters = ["fields": "id, name, gender"]
                let nextrequest: GraphRequest = GraphRequest(graphpath: "me", parameters: parameters, accessToken: AccessToken.current, httpMethod: .GET)

                nextrequest.start( (response: HTTPURLResponse?, result: GraphRequestResult<GraphRequest>) in
             //   )  (connection: GraphRequestConnection! , result: AnyObject!, error: NSError!) -> Void in

                    print(result as [Any])

)

我很难解析它我得到这个错误:

无法将类型“GraphRequestResult”的值强制转换为类型“[Any]”

success(FacebookCore.GraphResponse(rawResponse: Optional(
    gender = male;
    id = 1128614937219535;
    name = "Rayan Slim";
)))

【问题讨论】:

【参考方案1】:

检查GraphRequestResult 的签名,在您的情况下是(connection: GraphRequestConnection! , result: AnyObject!, error: NSError!),也许Swift 转换正在创建(connection: GraphRequestConnection! , result: AnyObject?, error: Error?)。即NSError -> Error 它是Optional

【讨论】:

以上是关于无法强制将“GraphRequestResult<GraphRequest>”类型的值转换为“[Any]”类型的主要内容,如果未能解决你的问题,请参考以下文章

无法将值 NULL 插入列 - 如何强制标识增加? [关闭]

无法将类型为“System.Collections.Generic.List`1[EPMS.Domain.SingleItem]”的对象强制转换为类型“EPMS

C# 无法将类型为“System.Byte[]”的对象强制转换为类型“System.Data.DataTable

错误无法使用 Mulesoft 将数组强制转换为对象

无法强制将“字符”类型的值转换为“字符串”类型

无法将String强制转换为List