facebook retour de demande de rien
-
27-10-2019 - |
Question
il a été 5 jours que je suis coincé dans la mise en œuvre d'une connexion simple, fb et je me cogner la tête comme un motherf *** r. de toute façon.
Je suis au point que je suis en train de régler la accessToken à la main. comme indiqué dans ce message.
https://github.com/facebook/php-sdk/ questions / 418 # issuecomment-2605012
le seul problème est que le rendement oauth / appel access_token rien et je devine que c'est un comportement assez foiré. c'est l'extrait que j'utilise pour faire l'appel
$token_url = "https://graph.facebook.com/oauth/access_token?client_id=".FB_APPID."&redirect_uri=".urlencode($curUrl)."&client_secret=".FB_APPSECRET."&code=".$_GET['code'];
log_to_file("curPageURL: ".$token_url);
$response = file_get_contents($token_url);
log_to_file("resp: ".$respone);
la log_to_file est une méthode de CUSTM qui enregistre le message pris dans un fichier afin que je puisse avoir la situation dans un journal tail -f scénario .
ce qui se passe ici est que le journal « resp: ». retours rien du tout.
ce que quelqu'un face au même problème?
thx à l'avance. cette chose me rend fou.
et je peux affirmer officiellement que le fb sdk est le plus buggy et pire service documenté J'ai jamais utilisé.
La solution
Facebook a l'API la plus mal documentée dans le monde. Je me souviens du temps je l'ai utilisé et ne pouvait pas aider jurant tout le temps! :) Voici un morceau de pseudo-code qui a travaillé pour moi. Il gagne l'autorisation d'un utilisateur de poster un lien sur son mur. Je poste juste pour que peut-être vous pouvez prendre quelques conseils et de faire votre travail de code:
<?php
//A function for cURL operations.
function callFb($url)
{
$ch = curl_init();
curl_setopt_array($ch, array(
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true
));
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
$url = "https://graph.facebook.com/oauth/access_token?client_id=<your_client_id>&redirect_uri=".urlencode("<the_url_where_the_user_is_redirected_after_granting_permission>")."&client_secret=<your_client_secret>";
/* Get access token. */
$access_token = callFb($url);
/* Parse the result to get access token */
$access_token = substr($access_token, strpos($access_token, "=")+1, strlen($access_token));
/* Save access token, if you want to for future.*/
mysql_query("INSERT INTO fb_auth_tokens (id,auth_token) VALUES('$_GET[id]','$auth_token')");
/* Post to users wall */
$apprequest_url = "https://graph.facebook.com/me/feed";
$mymessage="Hello World !";
$parameters = "?access_token=" . $access_token . "&message=" .
urlencode($mymessage) .
"&link=".urlencode("<link_that_you_want_to_post>").
"&description=<description_of_the_link>".
"&method=post";
$myurl = $apprequest_url . $parameters;
$result = callFb($myurl);
// Thy shall be done. :)