发布带有FB API的图像为新用户收到错误


posting image with fb api getting error for new users

致命错误:未捕获的 OAuth异常:发生意外错误。请稍后重试您的请求。

我正在尝试提供一个选项,使用 facebook API 从我的网站更改他们的 facebook 封面。这是我的代码:

<script>
FB.login(function(response) {
    if (response.authResponse) {
        if (response)
        {
            fblogin();
            // user is logged in and granted some permissions.
        }
        else
        {
            // user is logged in, but did not grant any permissions
            alert('Kindly allow the My App to access the Facebook Account');
        }
    } else {
        // user is not logged in
        alert('You are not logged in Facebook Account');
    }
    }, {scope:'read_stream,publish_stream,publish_actions,offline_access,email'});

function fblogin()
{
    var imageName = 'myimage.png';
   jQuery.post("/facebook/index", {imageName:imageName}, function(data){    
    if(data)
    {
        parent.window.open("http://www.facebook.com/profile.php?preview_cover="+data,'_blank');         
    } else {
alert('Please Login.');
}
    });
}
</script>

登录后,当我发布图像名称时,然后:

require_once('/api/facebook/src/facebook.php');                 
    $this->objfacebook = new Facebook(array(
        'appId'  => FB_APP_ID,
        'secret' => FB_SECRET_KEY,
        'fileUpload' => true,  
        'cookie' => true
    ));
$user_id = $this->objfacebook->getUser();
$access_token = $this->objfacebook->getAccessToken();
if ($user_id) {
$this->objfacebook->setFileUploadSupport(true);
//Create an album
$album_details = array(
    'message'=> 'Cover Photo',
    'name'=> 'Created on My App'
);
$create_album = $this->objfacebook->api('/me/albums', 'post', $album_details);
$album_uid = $create_album['id'];
//Uploading Photo
$photo_details = array(
    'message'=> 'Cover Photo',
    'name'=> 'Created on My App'
);
$file = BASE_PATH."/public/images/".$_POST['imageName'];  //BASE_PATH - Actual path of image
$photo_details['image'] = '@' . realpath($file);
$upload_photo = $this->objfacebook->api('/'.$album_uid.'/photos', 'post', $photo_details);
echo $upload_photo['id'];
exit();
}

对于我的老用户来说,它工作正常,当他们更改Facebook封面时,他们没有问题。
但是,当用户使用他们的新Facebook帐户来更改他们的Facebook时,他们每次都会收到胎儿错误。

我也在我的新Facebook帐户上尝试过这个,它也给了我同样的胎儿错误。

我不知道为什么新用户会发生这种情况?我在这里做错了什么吗?

请给出一些想法。

发生这种情况

是因为用户没有收到任何授权弹出窗口来允许我的应用程序在其帐户上发布数据。

现在已修复。 我刚刚更新了我的fb api. 它工作正常。