Menyelesaikan Masalah Facebook Graph API Selepas Menaik taraf daripada 2.2 kepada 2.3
Masalah:
Pengguna sedang mengalami masalah dengan permintaan API Graf Facebook tidak mengembalikan hasil atau tidak betul data selepas menaik taraf daripada versi 2.2 kepada 2.3.
Punca:
Isu ini berpunca daripada perubahan dalam format respons token akses OAuth dalam API Facebook versi 2.3. Respons kini dikembalikan dalam format JSON yang sah dan bukannya dikodkan URL.
Penyelesaian:
Untuk menyelesaikan isu ini, perubahan berikut perlu dibuat:
Menghuraikan Respons Token Akses OAuth sebagai JSON:
Dalam fungsi getAccessTokenFromCode, kemas kini kod untuk menghuraikan respons token akses sebagai JSON:
$response = json_decode($access_token_response); if (!isset($response->access_token)) { return false; } return $response->access_token;
Lanjutkan Token Akses Menggunakan Respons JSON:
Begitu juga, kemas kini fungsi setExtendedAccessToken kepada gunakan JSON respons:
// ... // Set access token using JSON response $response = json_decode($access_token_response); if (!isset($response->access_token)) { return false; } $this->setPersistentData( 'access_token', $response->access_token );
Mengambil Ulang Hari Lahir Pengguna:
Dalam versi 2.3, hari lahir pengguna tidak lagi disertakan dalam medan lalai yang dikembalikan oleh API Graf. Untuk mendapatkan semula hari lahir, nyatakan medan "hari jadi" secara eksplisit dalam permintaan:
https://graph.facebook.com/v2.3/{$user_id}?fields=id,name,birthday
Selepas melaksanakan perubahan ini, API Graf harus berfungsi seperti yang diharapkan dalam versi 2.3.
Atas ialah kandungan terperinci Mengapa Permintaan API Graf Facebook Saya Tidak Berfungsi Selepas Menaik taraf daripada v2.2 kepada v2.3?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!