Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Json Swift Facebook获取好友图请求错误_Json_Swift_Xcode_Facebook_Facebook Graph Api - Fatal编程技术网

Json Swift Facebook获取好友图请求错误

Json Swift Facebook获取好友图请求错误,json,swift,xcode,facebook,facebook-graph-api,Json,Swift,Xcode,Facebook,Facebook Graph Api,因此,我正在尝试获取一份所有其他facebook好友的列表,这些好友也在我的应用程序中连接 在执行FBSDKgraphrequest之后,我获得了正确的数据(见下文),然后将其转换为NSDictionary。数据如下所示: { friends = { data = ( { id = 10154257515635281; name = "H

因此,我正在尝试获取一份所有其他facebook好友的列表,这些好友也在我的应用程序中连接

在执行FBSDKgraphrequest之后,我获得了正确的数据(见下文),然后将其转换为NSDictionary。数据如下所示:

{
    friends =     {
        data =         (
                        {
                id = 10154257515635281;
                name = "Hector Judd";
            },
                        {
                id = 151132798649181;
                name = "Arch Tester Dev";
            }
        );
        paging =         {
            cursors =             {
                after =  QVFIUndVRFZAINXhCSlAzdnNGeUUwTHdhamNpc3NFbjR2NjF4dk40N3ZAZAR2lNLXM0Q3BxLW90REVsaFk3aU13Um1Ca0NOd0ZAXN2gxaDF2emhYem9BMjhkMVl3;
                before = QVFIUlo2a1Q4UGhpWmY2SFNWbUtpMVcxZAnEtR01KSlUyeVEtMU9GbjNkRHp2bTFKY0VoVm5xX3dNLXEwMG5OY0Q0My0ZD;
            };
         };
        summary =         {
            "total_count" = 831;
        };
    };
    id = 10208811056967519;
}
然后我尝试用多个if-let语句将其解包,但最终得到错误:Segmentation fault 11。请参阅下面的代码

func getFriends() {

    let parameters = ["fields": "friends"]

    FBSDKGraphRequest(graphPath: "me", parameters: parameters).startWithCompletionHandler({ (connection, result, error) -> Void in

        if error != nil {

            print(error)

        } else {

            if let result = result as? NSDictionary {

                if let data = result["friends"] as? NSDictionary {

                    if let friendData = data["data"] as? NSArray {

                        for friend in friendData {

                            friendIds.append(friend["id"] as String)

                            print(friendIds)

                        }


                    }
                }

            }
        }

    })
}

我对编程比较陌生,正在努力找到一个好的方法来实现这一点。任何建议都将不胜感激!!谢谢。

尝试在循环中将friendData变量声明为NSDictionary

   for friend in friends {
       if let friendData = friend as? NSDictionary {
              friendIds.append(friendData["id"] as! String)
       }
   }