【问题标题】:iPhone - How to post image on friend's facebook walliPhone - 如何在朋友的 Facebook 墙上发布图像
【发布时间】:2013-03-12 07:13:26
【问题描述】:
if ([FBSession.activeSession.permissions indexOfObject:@"publish_actions"] == NSNotFound)
{
        // No permissions found in session, ask for it
    [FBSession.activeSession reauthorizeWithPublishPermissions:[NSArray arrayWithObject:@"publish_actions"]
                                                   defaultAudience:FBSessionDefaultAudienceFriends
                                                 completionHandler:^(FBSession *session, NSError *error)
    {
             // If permissions granted, publish the story
         if (!error)
         {
             [self postImageToFB] ;
         }
    }];
}
    // If permissions present, publish the story
else
{
    [self postImageToFB] ;
}
- (void) postImageToFB
{
    NSData* imageData = UIImageJPEGRepresentation(self.image, 90);
    NSMutableDictionary * params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
                                    @"test", @"message",
                                    imageData, @"source",
                                    nil];

    [FBRequestConnection startWithGraphPath:[NSString stringWithFormat:@"%@/photos",friendName]
                                 parameters:params
                                 HTTPMethod:@"POST"
                          completionHandler:^(FBRequestConnection *connection, id result, NSError *error)
    {
         NSLog(@"%@",error) ;
         if( error == NULL )
         {
             UIAlertView *alert = [[UIAlertView alloc] initWithTitle:nil
                                                             message:@"Post sucessed!!"
                                                            delegate:nil
                                                   cancelButtonTitle:@"OK"
                                                   otherButtonTitles:nil] ;
             [alert show] ;
         }
    }];
}

当我将[NSString stringWithFormat:@"%@/photos",friendName] 更改为@"me/photos" 时,我可以使用- (void) postImageToFB 功能在自己的墙上发帖

但是我不能在朋友的墙上发帖,可能是权限不对或者有一些我不知道的问题?

我收到了这些错误

Error Domain=com.facebook.sdk Code=5 "The operation couldn’t be completed. (com.facebook.sdk error 5.)" UserInfo=0xc0a7320 {com.facebook.sdk:ErrorInnerErrorKey=Error 
Domain=NSURLErrorDomain Code=-1000 "bad URL" UserInfo=0xc001ea0 {NSUnderlyingError=0xaa45270 "bad URL", NSLocalizedDescription=bad URL}, com.facebook.sdk:HTTPStatusCode=200}

【问题讨论】:

    标签: ios facebook facebook-ios-sdk


    【解决方案1】:

    从现在开始你不能发布到朋友墙...

    删除通过 Graph API 向朋友墙发帖的功能 我们将删除通过 Graph API 向用户朋友墙发帖的功能。具体来说,针对 [user_id]/feed 的 [user_id] 与会话用户不同的帖子,或 target_id 用户与会话用户不同的 stream.publish 调用将失败。如果您想允许人们发布到他们朋友的时间线,请调用提要对话框。通过用户提及标记或动作标记包含朋友的故事将显示在朋友的时间线上(假设朋友批准标签)。有关详细信息,请参阅此博文。

    检查这个...在 facebook 开发者门户中提到的更改 https://developers.facebook.com/roadmap/completed-changes/#february-2013

    【讨论】:

      【解决方案2】:

      从@viswa 发布的链接中我们可以阅读

      移除通过 Graph API 向朋友墙发帖的功能 我们将 删除通过图表发布到用户朋友墙上的功能 API。具体来说,针对 [user_id]/feed 的帖子 [user_id] 是 不同于会话用户,或者 stream.publish 调用 target_id 用户与会话用户不同,会失败。如果你 想要允许人们发布到他们朋友的时间线,调用 饲料对话框。通过用户提及标签包含朋友的故事或 动作标记将显示在朋友的时间线上(假设 朋友批准标签)。有关详细信息,请参阅此博文。

      如果您想允许人们发布到他们朋友的时间线,请调用feed dialog

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-04-29
        • 2012-04-27
        • 1970-01-01
        相关资源
        最近更新 更多