ios - 将照片上传到 Facebook 粉丝专页

标签 ios facebook facebook-ios-sdk

这是我用来将照片上传到我的粉丝页面的代码要点

_permissions =  [[NSArray arrayWithObjects:@"read_stream", @"offline_access", @"publish_stream", @"manage_pages", @"user_photos", @"friends_photos",nil] retain]; 

[_facebook requestWithGraphPath:@"/me/accounts" andDelegate:self];

我从结果中解析页面 access_token 并将其用于模拟页面的下一个请求,并且我可以从结果中成功解析出页面所有者信息,所以我想我的 access_token 没问题

 - (IBAction)getUserInfo:(id)sender {
            _facebook.accessToken = self.pageAccessToken;
          [_facebook requestWithGraphPath:@"me" andDelegate:self];
        }

但是如果我尝试像这样将照片上传到我的页面相册:

- (IBAction)uploadPhoto:(id)sender {

          NSString *path = @"http://dl.dropbox.com/u/xxxxxxx/Icon.png";
          NSURL *url = [NSURL URLWithString:path];
          NSData *data = [NSData dataWithContentsOfURL:url];
          UIImage *img  = [[UIImage alloc] initWithData:data];

          NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
                                         img, @"picture",
                                         nil];



            _facebook.accessToken = self.pageAccessToken;


          [_facebook requestWithMethodName:@"photos.upload"
                                 andParams:params
                             andHttpMethod:@"POST"
                               andDelegate:self];

          //or like
          // [_facebook requestWithGraphPath:@"/me/photos" ...
          // [_facebook requestWithGraphPath:@"/<PAGE_ID>/photos" ...
          // [_facebook requestWithGraphPath:@"/<ALBUM_ID>/photos" ...

          [img release];
        }

我总是出错:

Error Domain=facebookErrDomain Code=190 "The operation couldn’t be completed. (facebookErrDomain error 190.)" UserInfo=0x15fca0 {request_args=(
{
key = method;
value = "photos.upload";
},
{
key = sdk;
value = ios;
},
{
key = "sdk_version";
value = 2;
},
{
key = "access_token";
value = "1939755xx612731|8ceab6c65ce0194d079f41ef-1068726246|3x2697618282|xdSRakxsdjezx9N1dnr9cRe6ICk";
},
{
key = format;
value = json;
}
), error_msg=Invalid OAuth 2.0 Access Token, error_code=190}

}

(注意:为了保护,我稍微修改了 access_token)

最佳答案

嘿 jackiedigital,我这个“manage_pages”权限只与 Graph API 兼容。
查看此页面上的最后权限:http://developers.facebook.com/docs/authentication/permissions/

关于ios - 将照片上传到 Facebook 粉丝专页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4848513/

相关文章:

facebook - 使用 Facebook 图形 API 从帖子中获取照片

ios - iOS5 应用程序中 Facebook 的 Hackbook 集成

iphone - 如何通过 Facebook iOS SDK 和 Graph API 邀请 friend 加入我的应用程序

ios - FBRequest 不返回用户出生日期

iOS Facebook Audience Network SDK 崩溃 - +[FBSDKTypeUtility 字典 :objectForKey:ofType:]:

ios - MPVolumeView 未在 iOS 模拟器中显示

iOS - UISwitch 忽略 NSUserDefaults 的值

facebook - 错误 无法执行事务 : Transaction failed with vm status: Validation(UnknownScript)

ios - 如何更新 iPhone 应用程序中的数据

android - 在 App Store 和 Play Store 上更新 Flutter 应用时,SharedPreference 丢失数据