L'API Facebook Graph ne fonctionne pas après la migration de la v2.2 vers la v2.3
Lors de la mise à niveau vers la v2.3 de l'API Graph de Facebook, les développeurs ont rencontré des problèmes avec certaines requêtes API qui ne renvoyaient pas de données. Cet article explore les problèmes spécifiques rencontrés et propose des solutions basées sur les modifications introduites dans la dernière version du SDK.
Description du problème
Les développeurs ont signalé que les requêtes API qui auparavant travaillés dans la v2.2 ne renvoient désormais aucun résultat dans la v2.3. Plus précisément, les requêtes suivantes ont été affectées :
Solution
Le problème vient des modifications apportées dans la v2.3 au format de Réponses JSON renvoyées par le point de terminaison du jeton d'accès OAuth. Dans la version 3.2.2 du SDK, la fonction getAccessTokenFromCode() analyse incorrectement la réponse JSON sous forme de tableau au lieu d'un objet, ce qui entraîne la récupération d'un jeton d'accès utilisateur incorrect.
Pour résoudre ce problème, getAccessTokenFromCode( ) doit être mise à jour pour analyser correctement la réponse JSON :
$response = json_decode($access_token_response); if (!isset($response->access_token)) { return false; } return $response->access_token;
Mises à jour supplémentaires pour Extended Jetons d'accès
Pour les applications utilisant des jetons d'accès étendus, une modification similaire est requise dans la fonction setExtendedAccessToken() :
//Version 2.3 and up. $response = json_decode($access_token_response); if (!isset($response->access_token)) { return false; } $this->destroySession(); $this->setPersistentData( 'access_token', $response->access_token );
Conclusion
En traitant des changements mentionnés ci-dessus dans l'analyse des réponses JSON, les développeurs peuvent garantir que leurs requêtes API fonctionnent comme prévu dans l'API Graph de Facebook. v2.3.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!