J'ai eu du mal à trouver ce qui se passe avec ça. Mes scripts fonctionnaient bien pendant un moment et se sont soudainement à moitié arrêtés.
J'accède à l'API et je reçois un jeton d'accès. Avec ce jeton d'accès, je peux accéder aux informations publiques d'un utilisateur sans problème. Cependant, lorsque j'essaie de publier des informations sur leur compte FB, je reçois cette erreur.
Fatal error: Uncaught OAuthException: An active access token must be used to query information about the current user.
Une idée de ce qui se passe ici ? J'utilise également des sessions sur mon site pour garder la trace des identifiants internes des utilisateurs. Je ne suis pas sûr que mes sessions puissent être à l'origine du problème.
Voici mon script de téléchargement où j'obtiens une erreur.
require 'facebook/src/facebook.php';
// Create our Application instance (replace this with your appId and secret).
$facebook = new Facebook(array(
'appId' => '12345678',
'secret' => 'REMOVED',
'fileUpload' => true,
'cookie' => true,
));
$facebook->setFileUploadSupport(true);
$me = null;
// Session based API call.
if ($session) {
try {
$uid = $facebook->getUser();
$me = $facebook->api('/me');
} catch (FacebookApiException $e) {
error_log($e);
}
}
// login or logout url will be needed depending on current user state.
if ($me) {
$logoutUrl = $facebook->getLogoutUrl();
} else {
$loginUrl = $facebook->getLoginUrl();
}
$photo_details = array('message' => 'my place');
$file='photos/my.jpg'; //Example image file
$photo_details['image'] = '@' . realpath($file);
$upload_photo = $facebook->api('/me/photos', 'post', $photo_details);