2.2에서 2.3으로 업그레이드한 후 Facebook Graph API 문제 해결
문제:
사용자 이후 결과가 없거나 잘못된 데이터를 반환하는 Facebook Graph API 요청에 문제가 있습니다. 버전 2.2에서 2.3으로 업그레이드.
원인:
이 문제는 Facebook API 버전 2.3의 OAuth 액세스 토큰 응답 형식 변경으로 인해 발생합니다. 이제 응답이 URL 인코딩 대신 유효한 JSON 형식으로 반환됩니다.
해결책:
이 문제를 해결하려면 다음과 같이 변경해야 합니다.
OAuth 액세스 토큰 응답을 다음과 같이 구문 분석합니다. JSON:
getAccessTokenFromCode 함수에서 액세스 토큰 응답을 JSON으로 구문 분석하도록 코드를 업데이트합니다.
$response = json_decode($access_token_response); if (!isset($response->access_token)) { return false; } return $response->access_token;
JSON 응답을 사용하여 액세스 토큰 확장:
마찬가지로 JSON을 사용하도록 setExtendedAccessToken 함수를 업데이트하세요. 응답:
// ... // 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 );
사용자 생일 검색:
버전 2.3에서는 그래프 API에서 반환하는 기본 필드에 사용자의 생일이 더 이상 포함되지 않습니다. 생일을 검색하려면 요청에 "생일" 필드를 명시적으로 지정하세요.
https://graph.facebook.com/v2.3/{$user_id}?fields=id,name,birthday
이러한 변경 사항을 구현한 후 그래프 API는 버전 2.3에서 예상대로 작동해야 합니다.
위 내용은 v2.2에서 v2.3으로 업그레이드한 후 내 Facebook Graph API 요청이 작동하지 않는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!