2015-05-05 4 views
2

Я пытаюсь понять, как составлять запросы API графа FB (FB SDK 4.0 и Swift), когда второй (дочерний) запрос зависит от первого (родительского) запроса. В частности, я хотел бы получить альбомы пользователя и обложку каждого альбома.Facebook iOS SDK & Swift - Как создать зависимые пакетные запросы?

  1. меня/альбомы поля = имя, cover_photo < - Получить альбомы пользователя запросить

  2. /888474748 < - Получить обложку запрос

документация очень расплывчатым в отношении этот и API-документы для FBSDKGraphRequestConnection упоминают, что метод addRequest: completeHandler: batchParameters: может принимать такие параметры, как «имя» и «depend_on». Это, похоже, метод, который я ищу, но я могу найти пример его использования в Obj-C или Swift.

Должно ли это выглядеть примерно так? Благодаря!

let albumRequest = FBSDKGraphRequest(graphPath: "me/albums?fields=name,cover_photo", parameters: nil) 
    let albumCoverRequest = FBSDKGraphRequest(graphPath: "cover_photo_id", parameters: nil) //what should this look like? jsonpath? 
    let graphConnection = FBSDKGraphRequestConnection() 
    graphConnection.addRequest(albumRequest, completionHandler: { (connection:FBSDKGraphRequestConnection!, result:AnyObject!, error:NSError!) -> Void in 
     if(error != nil){ 
      println(error) 
     }else{ 

     } 
     },batchParameters: ["name" : "albums"]) 

    graphConnection.addRequest(albumRequest, completionHandler: { (connection:FBSDKGraphRequestConnection!, result:AnyObject!, error:NSError!) -> Void in 
     if(error != nil){ 
      println(error) 
     }else{ 

     } 
     },batchParameters: ["depends_on" : "albums"]) //should this be some jsonpath expression? 

ответ

2

Получил это решение.

+1

Как вы на самом деле получаете доступ к результатам каждого альбома? Мне не удавалось превратить результат в массив ... – Matt