1
我已经创建了Facebook应用程序。我需要用户能够通过该应用程序发布图像到我的Facebook页面的相册,并且我需要抓取页面的访问令牌。当我以页面管理员身份登录时,我只能获得访问令牌,但如果我使用其他帐户登录,则无法获取页面的访问令牌(即使我喜欢该页面并安装了应用程序)。代码如下使用Facebook API发布图像粉丝页面相册
$fanpage = 'XXXXXXXXXXXXX';
$pages_arr = array(
'access_token'=>$access_token,
'fields'=>'access_token'
);
$page_token = $facebook->api('/'.$fanpage, 'get', $pages_arr);
$fanpage_token = $page_token['access_token'];
**//When logged in as admin of the page I get the token but I don't get the token if I am not //page admin**
echo $fanpage_token;
$file = "@".realpath("test.jpg");
$args = array(
'message' => 'test',
'image' => $file,
'aid' => $album_id,
'no_story' => 1,
'access_token' => $fanpage_token // note, we use the page token here
);
$photo = $facebook->api("/$album_id/photos", 'post', $args);
if(is_array($photo) && ! empty($photo['id']))
echo 'Photo uploaded. Check it on Graph API Explorer. ID: ' . $photo['id'];
我要求在App以下权限安装
manage_notifications,user_photos,photo_upload,publish_stream,friends_photos,manage_pages
但问题是访问令牌在一段时间后过期。有没有办法阻止访问令牌过期,或者我们能否获得永不过期的访问令牌?据我所知离线访问现在也被弃用。 – Waqar 2012-03-29 03:36:17