致命错误:未捕获OAuthException:发生了意外错误。请稍后重试您的请求。
我正在尝试使用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帐户,它也给了我同样的胎儿错误。
我不知道为什么新用户会发生这种情况?我在这里做错了吗?
请提出一些想法。答案 0 :(得分:0)
现在已经修好了。我刚刚更新了fb api
。它工作正常。