Facebook Graph API 2.3 문제 해결
Graph API 2.3 업그레이드로 인해 예상치 못한 문제가 발생했습니다. API 응답을 검색할 수 없거나 사용자 데이터가 누락되는 경우가 가장 많이 발생합니다. 그러나 이러한 문제에 대한 해결 방법은 버전 2.3에 도입된 변경 사항을 이해하는 데 있습니다.
응답 형식 변경
버전 2.3에서는 "oauth/ access_token" 엔드포인트입니다. 이제 URL로 인코딩된 데이터 대신 유효한 JSON을 반환합니다. 이 변경 사항은 Facebook SDK 3.2.2의 액세스 토큰 구문 분석 메커니즘에 영향을 미칩니다.
해결 방법
이를 수정하려면 SDK 내에서 "getAccessTokenFromCode" 기능을 수정해야 합니다. 응답을 JSON으로 구문 분석합니다. 아래의 업데이트된 코드는 이 수정 사항을 보여줍니다.
$response = json_decode($access_token_response); if (!isset($response->access_token)) { return false; } return $response->access_token;
추가 변경 사항
public function setExtendedAccessToken() { try { // Get extended access token. $access_token_response = $this->_oauthRequest( $this->getUrl('graph', '/oauth/access_token'), $params = array( 'client_id' => $this->getAppId(), 'client_secret' => $this->getAppSecret(), 'grant_type' => 'fb_exchange_token', 'fb_exchange_token' => $this->getAccessToken(), ) ); } catch (FacebookApiException $e) { // User revoked authorization. return false; } if (empty($access_token_response)) { return false; } $response = json_decode($access_token_response); if (!isset($response->access_token)) { return false; } $this->destroySession(); $this->setPersistentData( 'access_token', $response->access_token ); }
이러한 업데이트 및 수정 사항을 구현하면 Facebook Graph API 2.3에서 직면한 문제를 해결할 수 있습니다.
위 내용은 액세스 토큰 및 사용자 데이터 누락과 관련된 Facebook Graph API 2.3 문제를 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!