【问题标题】:Post Photos to friends wall: Error OAuthException 240将照片发布到朋友墙:错误 OAuthException 240
【发布时间】:2024-05-01 15:10:04
【问题描述】:

将照片发布到朋友墙:错误 OAuthException 240

我开发了一个 Facebook 应用程序,可以在其中将照片发布到朋友的墙上。 我使用了这段代码:

FB.api("/123456789/photos", 'post', { message: textMessage, accessToken:tempAccessToken, url:imageUrl}, function(response)

它几乎适用于我所有的朋友,只有一些朋友我收到错误消息:“(#240) 此用户不允许将照片上传到此对象的墙上”

阻止用户的隐私设置发布到他/她的墙上?

【问题讨论】:

  • 听起来您想在不“属于”用户的墙上发帖。你确定用户在他们自己的墙上发帖吗?
  • 用户在他/她朋友的墙上贴了一张照片。这可行,只是有时我收到错误消息:““(#240)不允许此用户将照片上传到此对象的墙上”
  • 我不能 100% 确定,但这可能是一个隐私问题。为什么不对自己的帐户进行一些测试 - 看看是否可以重现此错误。
  • 我可以重现这个错误。我为 1 位朋友收到此错误。

标签: facebook post photos


【解决方案1】:

我遇到了完全相同的问题,而且它恰好是隐私问题。请参阅 Facebook 隐私设置 -> 时间轴和标记 -> 谁可以在您的时间轴上发帖。如果您的朋友设置了“仅限我”,那么您的应用将无法在该朋友的墙上发布任何内容。

【讨论】:

    【解决方案2】:

    我也收到同样的错误信息。 [message] => (#240) 不允许此用户将照片上传到此对象的墙上

    当您的应用用户在应用安装时拒绝“代表您发布”权限时,会出现此错误。

    在发布之前,我只是检查了 publish_stream 权限。如果获得批准,则在墙上发布,否则将用户重定向到登录 url。 (再次显示权限弹窗)

    $permissions = $facebook->api("/me/permissions");
    if( array_key_exists('publish_stream', $permissions['data'][0]) ) {
        // code for actual posting
    } else {
        header( "Location: " . $facebook->getLoginUrl(array("scope" => "publish_stream")) );
    }
    

    它对我有用:)

    【讨论】: