在我的iOS应用中,我想在Facebook页面上发布Facebook页面。
我通过'me / accounts'端点通过用户检索页面访问令牌。但是,我不知道如何使用该页面访问令牌创建FBSession以创建发布请求。
页面访问令牌是一个字符串,我通过询问用户'manage_pages'和'publish_streams'权限来正确获取它。
有一种简单的方法吗?我一直在看fetchFBAccessTokenData,但我不确定如何使用它。
答案 0 :(得分:4)
答案是 - 这花了很长时间才找到 - initWithSession:FBSession.activeSession
应该是initWithSession:nil
,并且访问令牌应该在parameters
NSDictionary字段中设置为{{{ 1}}。 FBSession.activeSession中的访问令牌会覆盖参数中的access_token(它不应该是IMHO),使帖子显示为“粉丝”帖子,而不是帖子作为页面。
[parameters setObject:yourAccessToken forKey:@"access_token"]
当然现在还有其他问题,例如访问令牌将持续多长时间,这需要令牌缓存状态:https://developers.facebook.com/docs/howtos/token-caching-ios-sdk/
在这里找到答案:https://github.com/facebook/facebook-ios-sdk/pull/483
答案 1 :(得分:1)
感谢詹姆斯奥布莱恩的守则。在此之上, 您可能需要以下代码:
FBRequestConnection *con = [[FBRequestConnection alloc] init];
[con addRequest:request completionHandler:^(FBRequestConnection *connection, id result, NSError *error){
NSLog(@"facebook result >> %@", result);
[self cancelfbshare:nil];
}];
[con start];