1

Actuellement, j'ai un site Web qui permet aux utilisateurs de télécharger des images et en même temps je voudrais que toutes ces images téléchargées soient publiées automatiquement sur les albums d'une page Facebook. J'ai utilisé ce code CURL ci-dessous:Comment publier une image dans les albums d'une page Facebook via CURL en obtenant de nouveaux jetons d'accès aux pages?

$args = array(
     'message' => $imageDescription, 
     'access_token'=>$accesstoken, 
     'url' => $img 
    ); 

    $ch = curl_init(); 
    $url = 'https://graph.facebook.com/' . $albumid . '/photos'; 
    curl_setopt($ch, CURLOPT_URL, $url); 
    curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0); 
    curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0); 
    curl_setopt($ch, CURLOPT_HEADER, false); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
    curl_setopt($ch, CURLOPT_POST, true); 
    curl_setopt($ch, CURLOPT_POSTFIELDS, $args); 
    curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4); 

    $data = curl_exec($ch); 

    $response = json_decode($data,true); 

De mon test, ce code fonctionne, mais seulement pour une heure, parce que j'utilise le jeton d'accès généré à partir de l'API graphique. Cette expiration est mentionnée dans https://developers.facebook.com/docs/pages/access-tokens#expire. Je ai regardé autour de Stack Overflow, et la majorité des questions et réponses mentionné l'utilisation de l'ID de l'application et de l'application secrète pour générer un nouveau jeton, mais c'est une page et non une application. Il n'y a pas d'identifiant d'application et de secret d'application, donc je suis bloqué.

Alors, dans ce cas, que puis-je faire? Ou n'est-il pas possible d'utiliser CURL dans ce cas?

Répondre

2

Une application dans ce cas ne se réfère pas à quelque chose comme un jeu, il se réfère à une application API. Ceci est courant pour les API qui utilisent OAuth pour authentifier les utilisateurs. Vous créez une application pour votre compte et elle vous permet d'accéder à l'API Facebook à l'aide de votre compte utilisateur lorsque l'utilisateur y accède.

Le poste suivant explique la chose entière et a même information sur la façon dont l'API facebook fonctionne https://stormpath.com/blog/what-the-heck-is-oauth

+1

Après avoir obtenu l'application API, reportez-vous https://stackoverflow.com/questions/17197970/facebook-permanent-page- access-token pour obtenir un jeton "jamais expiré" et tout fonctionne pour moi. – Karl