我正在使用FBDialogs共享链接,并且作为跟踪的一部分,我想将该共享帖子的post_id返回给服务器。
如何在成功时检索post_id
[FBDialogs presentShareDialogWithLink:params.link
name:params.name
caption:params.caption
description:params.description
picture:params.picture
clientState:nil
handler:^(FBAppCall *call, NSDictionary *results, NSError *error) {
if(error) {
// An error occurred, we need to handle the error
// See: https://developers.facebook.com/docs/ios/errors
NSLog(@"%@",[NSString stringWithFormat:@"Error publishing story: %@", error.description]);
} else {
// Success
NSLog(@"result %@", results);
}
}];
结果词典中没有任何内容
由于
答案 0 :(得分:1)
我认为结果词典中没有关于帖子的任何信息的原因是Facebook不希望应用开发者知道是否确实有帖子。
用户可以中止发布内容但是仍然会向应用报告成功。
答案 1 :(得分:0)
要在响应中获取postId,您需要在呈现FBDialog之前请求发布权限,否则postId将不会出现在响应中。例如,如果您有FBLoginView,则可以使用:
[[FBLoginView alloc] initWithPublishPermissions:@[@"publish_actions"] defaultAudience:FBSessionDefaultAudienceEveryone];