J'ai résolu ce problème: pour une raison quelconque, la réponse de/oauth/access_token est devenue un JSON valide. La fonction parse_str analysait un mauvais format. Pour moi, changer ces lignes dans les bibliothèques/hybridauth/Hybrid/thirdparty/Facebook/base_facebook.php résolu le problème:L'authentification Hybridauth a échoué! Facebook a retourné un identifiant d'utilisateur invalide Solution
S'il vous plaît changer ce code
public function setExtendedAccessToken() {
$response_params = array();
parse_str($access_token_response, $response_params);
if (!isset($response_params['access_token'])) {
return false;
}
}
public function getAccessTokenFromCode($code, $redirect_uri = null) {
$response_params = array();
parse_str($access_token_response, $response_params);
if (!isset($response_params['access_token'])) {
return false;
}
}
Modification:
public function setExtendedAccessToken() {
$response_params = json_decode($access_token_response, true);
// Not a valid JSON format
if(!isset($response_params['access_token'])) {
// Try to parse
$response_params = array();
parse_str($access_token_response, $response_params);
if (!isset($response_params['access_token'])) {
return false;
}
}
}
public function getAccessTokenFromCode($code, $redirect_uri = null) {
$response_params = json_decode($access_token_response, true);
// Not a valid JSON format
if(!isset($response_params['access_token'])) {
// Try to parse
$response_params = array();
parse_str($access_token_response, $response_params);
if (!isset($response_params['access_token'])) {
return false;
}
}
}
-t-il [tag: yu] ou [tag: yii2]? – SaidbakR
Ce code pour Yii 1 –