v2.2에서 v2.3으로 마이그레이션한 후 Facebook Graph API가 작동하지 않습니다.
Facebook Graph API v2.3으로 업그레이드하면, 개발자는 특정 API 요청이 데이터를 반환하지 못하는 문제에 직면했습니다. 이 문서에서는 발생한 특정 문제를 살펴보고 최신 버전의 SDK에 도입된 변경 사항을 기반으로 솔루션을 제공합니다.
문제 설명
개발자는 이전에 API 요청이 v2.2에서 작업한 결과는 이제 v2.3에서 결과를 반환하지 않습니다. 특히 다음 요청이 영향을 받았습니다.
해결책
문제의 원인 v2.3의 변경 사항부터 OAuth 액세스 토큰 엔드포인트가 반환하는 JSON 응답 형식까지. 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의 API에서 예상대로 작동하는지 확인할 수 있습니다. 그래프 API v2.3.
위 내용은 v2.2에서 v2.3으로 마이그레이션한 후 내 Facebook Graph API가 실패하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!