我想检查我当前的 Facebook token (它存在)是否仍然具有用户授予的所有所需权限。
因此,我调用该图来检索与我的 token 关联的所有授予的权限:
FBSDKGraphRequest(graphPath: "me", parameters: ["fields": "permissions"]).startWithCompletionHandler({ (connection, result, error) -> Void in
var resultDictionary:NSDictionary!
if (error != nil) {
println("ERROR = \(error)")
}
else {
resultDictionary = result as! NSDictionary
println("1: ---- SUCCESS (result) ----")
println("\(result)")
// this doesn´t work:
// var test = resultDictionary.objectForKey("permissions")?.objectForKey("data")! ?? nil
// var count = test.count
// println("---- test (\(count))")
// println(test)
}
})
Facebook 的结果是:
{
id = 646571222102633;
permissions = {
data = (
{
permission = "user_friends";
status = granted;
},
{
permission = "publish_actions";
status = granted;
},
{
permission = "public_profile";
status = granted;
}
);
};
}
因为可能没有/一个/很多权限,所以我想迭代权限/数据下的结果部分。
但我不熟悉将此 NSDictionary 转换为可以计数
下面的元素并迭代
的东西。
有什么帮助吗?
最佳答案
明白了!
FBSDKGraphRequest(graphPath: "me", parameters: ["fields": "permissions"]).startWithCompletionHandler({ (connection, result, error) -> Void in
var resultDictionary:NSDictionary!
if (error != nil) {
DebugOutput("ERROR = \(error)")
}
else {
resultDictionary = result as! [String: AnyObject]
println("---- SUCCESS (result) ----")
println("\(result)")
var test = resultDictionary.objectForKey("permissions")?.objectForKey("data")! as! [[String:AnyObject]]
var count = test.count
println("---- test (\(count))")
println(test)
}
})
非常感谢:http://ustwo.github.io/tech-blog/2014/08/01/ios-swift-dictionaries/
关于ios - 解析 Facebook SDK FBSDKGraphRequest 结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32360985/