以用户身份将照片发布到Facebook粉丝页面。 iOS Facebook SDK 3.1
我正在尝试使用Facebook SDK 3.1向用户发布照片到Facebook页面。
当我使用以下代码创建上传图片请求时:
FBRequest *uploadPhotoRequest = [FBRequest requestWithGraphPath:@"/${FAN_PAGE_ID}/photos/" parameters:[NSDictionary dictionaryWithObjectsAndKeys:self.imageToShare, @"source", nil] HTTPMethod:@"POST"];
图像直接转到用户的时间轴 ,而不是页面的时间轴 。
但是当我发布链接时:
FBRequest *request = [FBRequest requestWithGraphPath:@"/${FAN_PAGE_ID}/feed/" parameters:[NSDictionary dictionaryWithObjectsAndKeys:@"http://stackoverflow.com", @"link", nil] HTTPMethod:@"POST"];
链接正确发布到Facebook页面。
要打开一个会话,我正在使用代码:
[FBSession openActiveSessionWithPermissions:[NSArray arrayWithObjects:@"publish_stream", @"photo_upload", nil] allowLoginUI:YES completionHandler:^(FBSession *session, FBSessionState state, NSError *error) { ... }];
我知道openActiveSessionWithPermissions
已被弃用,在iOS 5和6上使用它来实现相同的SSO行为。
UPDATE
或者是否可以上传带有访问令牌替换的照片? 使用页面访问令牌而不是用户访问令牌。 如果是,如何在不强制用户以页面管理员身份登录的情况下以编程方式获取页面访问令牌?
你建议我做什么?
谢谢!
BR。 尤金。
https://developers.facebook.com/docs/reference/api/page/#photos说,
“你可以通过发布带有publish_stream 和manage_pages权限 […]的PAGE_ID /照片的HTTP POST请求,将照片发布到Page’s Wall”
听起来像“普通”用户不允许通过API将图像发布到页面的墙上。