Facebook autorizzazione viene eseguito in un loop di reindirizzamento
-
26-10-2019 - |
Domanda
Sto usando il codice di applicazione di tela Facebook nella documentazione e mantiene il reindirizzamento dopo mi ha colpito "permettere". Non so che cosa è sbagliato. Fate controllare se si tratta di un bug o è solo a me. Viene da http://developers.facebook.com/docs/appsonfacebook/tutorial/
<?php
$app_id = ""; //Added my app id
$canvas_page = ""; //Added my canvas page
$auth_url = "http://www.facebook.com/dialog/oauth?client_id="
. $app_id . "&redirect_uri=" . urlencode($canvas_page);
$signed_request = $_REQUEST["signed_request"];
list($encoded_sig, $payload) = explode('.', $signed_request, 2);
$data = json_decode(base64_decode(strtr($payload, '-_', '+/')), true);
if (empty($data["user_id"])) {
echo("<script> top.location.href='" . $auth_url . "'</script>");
} else {
echo ("Welcome User: " . $data["user_id"]);
}
?>
Soluzione
Il mio consiglio è usare php Sdk rende ogni cosa più facile per voi e il codice per il login sarà così:
<?php
include_once('src/facebook.php');
$config = array(
'appId' => 'xxxxxxxxxxxx',
'secret' => 'xxxxxxxxxxxxxxxx',
'fileUpload' => FALSE, // optional
);
$canvas_page = ""; //Added my canvas page
$auth_url = "http://www.facebook.com/dialog/oauth?client_id="
. $app_id . "&redirect_uri=" . urlencode($canvas_page);
$uid=$facebook->getuser();
if(empty($uid)){ echo("<script> top.location.href='" . $auth_url . "'</script>");}
else { echo ("Welcome User: " . $uid);}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow