如何仅使用帖子 ID 与 FBWebDialogs 共享 Facebook 帖子?
Posted
技术标签:
【中文标题】如何仅使用帖子 ID 与 FBWebDialogs 共享 Facebook 帖子?【英文标题】:How to share a Facebook post with FBWebDialogs using only the post id? 【发布时间】:2013-11-18 03:52:51 【问题描述】:我从FBWebDialogs 文档中看到,您可以传入一个“链接”参数(到外部内容的超链接),以便与 Facebook 分享。但是在我的应用程序中,我没有超链接——我只有我希望重新分享的给定 Facebook 帖子的“id”。
问:如果您只有帖子 ID,如何分享 Facebook 帖子?
【问题讨论】:
【参考方案1】:我能够找到适合我的解决方案。本质上,您需要构建一个绑定 USER_ID 和 POST_ID 的永久链接,并将该永久链接作为参数之一传递:
#import "Facebook.h"
// ...
// Facebook ID is provided in form USER_ID_POST_ID
NSString *rawId = @"113418445354091_460428417431691";
// Explode the ID into an array with two elements
NSArray *idArray = [rawId componentsSeparatedByString:@"_"];
// Build the permalink and bind the USER_ID and _POST_ID
NSString *path = [NSString stringWithFormat:@"http://www.facebook.com/permalink.php?id=%@&v=wall&story_fbid=%@",[idArray objectAtIndex:0],[idArray objectAtIndex:1]];
// Build params dict
NSDictionary *params = @
@"access_token" : @"MY_FACEBOOK_ACCESS_TOKEN",
@"name" : @"My Post Name",
@"description" : @"My Post Description hello there how are you.",
@"link" : path
;
// Call the Dialog
[FBWebDialogs presentFeedDialogModallyWithSession:nil
parameters:params
handler:^(FBWebDialogResult result, NSURL *resultURL, NSError *error)
];
// ...
【讨论】:
以上是关于如何仅使用帖子 ID 与 FBWebDialogs 共享 Facebook 帖子?的主要内容,如果未能解决你的问题,请参考以下文章
FBWebDialogs 缺少用于验证用户的会话 Cookie
使用 FBWebDialogs (Facebook SDK 3.5) 成功发布后的 nil resultURL
我可以通过 presentFeedDialogModallyWithSession 传递给 FBWebDialogs 的全套合法参数是啥