如何通过 iOS 中的图形 API 在 Facebook 页面上作为 Page Post 从应用发布?
Posted
技术标签:
【中文标题】如何通过 iOS 中的图形 API 在 Facebook 页面上作为 Page Post 从应用发布?【英文标题】:How to post on Facebook page as Page Post from app via graph API in iOS? 【发布时间】:2015-05-26 09:27:41 【问题描述】:我正在尝试在 Facebook 页面上发布页面帖子。我在图形代码 API 下方使用,但在其他人发布的同时发布,而不是作为页面管理员/页面本身:
NSDictionary* params = [NSDictionary dictionaryWithObjectsAndKeys:
@"Testing Post", @"name",
@"This is testing", @"message",
@"this is description", @"description",
nil];
NSString *feed = [NSString stringWithFormat:@"/Page ID/feed"];
[FBRequestConnection startWithGraphpath:feed
parameters:params
HTTPMethod:@"POST"
completionHandler:^(
FBRequestConnection *connection,
id result,
NSError *error
)
if(!error)
NSLog(@"%@", result);
else
NSLog(@"Error %@", error);
];
【问题讨论】:
你的会话打开了吗? 【参考方案1】:如果您想作为主页本身发布,您需要使用具有publish_pages
权限的主页访问令牌。
见
https://developers.facebook.com/docs/graph-api/reference/v2.3/page/feed#publish https://developers.facebook.com/docs/facebook-login/access-tokens#pagetokens【讨论】:
【参考方案2】:这是完整的答案
NSString *accesstoken = <Page_Access_Token>
NSDictionary* params = [NSDictionary dictionaryWithObjectsAndKeys:
@"Post heading", @"name",
accesstoken, @"access_token",
@"Type post message", @"message",
@"Hyperlink to your post", @"link",
@"Add description", @"description",
@"Image url string", @"picture",
nil];
FBRequest *requestToPost = [[FBRequest alloc] initWithSession:nil
graphPath:@"/me/feed"
parameters:params
HTTPMethod:@"POST"];
FBRequestConnection *requestToPostConnection = [[FBRequestConnection alloc] init];
[requestToPostConnection addRequest:requestToPost completionHandler:^(FBRequestConnection *connection, id result, NSError *error)
if (!error)
NSLog(@" %@", result);
else
NSLog(@"%@", error);
];
【讨论】:
请确保您的 Facebook 应用 ID 在状态和评论中有 manage_pages 和 publish_pages。首先获取您的页面令牌,然后使用上面的代码进行共享。有任何问题都可以问我。以上是关于如何通过 iOS 中的图形 API 在 Facebook 页面上作为 Page Post 从应用发布?的主要内容,如果未能解决你的问题,请参考以下文章
没有下一个用于在 Facebook 的商业帐户图形 API 上获取 instagram 媒体的网址