2013-05-25 5 views
0

Я сделал этот скрипт. Он отлично работает и отправляет фотографию на мою фан-страницу. Но через один час токен входа недействителен. Как я могу сделать постоянный вход на мою страницу FB Fanpage. Любая идея?Facebook PHP SDK постоянный Вход

<?php 
require_once('facebook.php'); 
$facebook = new Facebook(array(
    'appId' => 'XXXXXXXXXXXXX', 
    'secret' => 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXX', 
    'fileUpload' => true 
)); 
$access_token = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'; 
$facebook->setAccessToken($access_token); 
$facebook->setExtendedAccessToken(); 
$params = array(
    'access_token' => $access_token 
); 
// The id of the fanpage 
$fanpage = 'XXXXXXXXXXXXXX'; 
// Get the page access token 
$accounts_list = $facebook->api('/me/accounts'); 
foreach($accounts_list['data'] as $account){ 
if($account['id'] == $fanpage){ 
    $fanpage_token = $account['access_token']; 
    echo "<p>Page -- Access Token:<br>$fanpage_token</p>"; 
} 
} 
$args = array(
      'source' => '@'.realpath('img/17226_014.jpg'), 
      'message' => 'php sdk test', 
      'access_token' => $fanpage_token 
     ); 
$post_url = '/'.$fb_page_id.'/photos'; 
$photo = $facebook->api($post_url, 'post', $args); 
if(is_array($photo) && ! empty($photo['id'])) { 
echo 'Photo uploaded. Check it on Graph API Explorer. ID: ' . $photo['id']; 

} >

+0

Читайте также: https://developers.facebook.com/roadmap/offline-access-removal/ – CBroe

ответ

1

Вы должны получить новый Extented маркер доступа с

<?php 
    $new_access_token = $facebook->getAccessToken(); 
?> 

после вызова $ facebook-> setExtendedAccessToken (?);

И, конечно, вам нужно использовать этот токен доступа для следующих вызовов API.

Смежные вопросы