v2.2 から v2.3 への移行後に Facebook Graph API が機能しない
Facebook の Graph API を v2.3 にアップグレードすると、開発者は、特定の API リクエストがデータを返さないという問題に遭遇しました。この記事では、発生した特定の問題を調査し、最新バージョンの SDK で導入された変更に基づいた解決策を提供します。
問題の説明
開発者らは、API リクエストが以前にv2.2 では動作していましたが、v2.3 では結果が返されなくなりました。具体的には、次のリクエストが影響を受けます:
解決策
この問題は、v2.3 で JSON 形式に加えられた変更に起因します。 OAuth アクセス トークン エンドポイントによって返される応答。 SDK バージョン 3.2.2 では、getAccessTokenFromCode() 関数が JSON 応答をオブジェクトではなく配列として誤って解析し、その結果、誤ったユーザー アクセス トークンが取得されます。
この問題を解決するには、getAccessTokenFromCode( ) JSON 応答を正しく解析するには関数を更新する必要があります:
$response = json_decode($access_token_response); if (!isset($response->access_token)) { return false; } return $response->access_token;
拡張アクセス トークンの追加更新
拡張アクセス トークンを使用するアプリの場合、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 );
結論
JSON 応答解析における前述の変更に対処することで、開発者は API リクエストが Facebook の Graph API v2.3 で期待どおりに機能することを確認できます。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3