문제:
Facebook 인증 흐름에서 오프라인_액세스 권한 지원 중단 , 해당 권한 없이 수명이 긴 액세스 토큰을 검색하는 것이 어려워졌습니다. 서버측 OAuth 토큰이 오래 지속된다는 Facebook 문서에도 불구하고 그렇지 않습니다.
해결책:
Facebook은 PHP SDK에 메소드를 포함하도록 업데이트했습니다. 액세스 토큰 유효성을 연장합니다.
업데이트된 SDK 방법:
setExtendedAccessToken이라는 공개 함수가 base_facebook.php에 추가되었습니다. 이 함수는 만료일이 60일인 새 액세스 토큰을 반환합니다.
사용법:
일반 액세스 토큰을 받은 후 이 함수를 호출하세요. getAccessToken 공개 함수를 사용하여 새 토큰에 액세스할 수 있습니다.
확장 액세스 토큰 기능:
public function getExtendedAccessToken(){ try { $access_token_response = $this->_oauthRequest( $this->getUrl('graph', '/oauth/access_token'), array( 'client_id' => $this->getAppId(), 'client_secret' => $this->getAppSecret(), 'grant_type' => 'fb_exchange_token', 'fb_exchange_token' => $this->getAccessToken() ) ); } catch (FacebookApiException $e) { return false; } if (empty($access_token_response)) { return false; } $response_params = array(); parse_str($access_token_response, $response_params); if (!isset($response_params['access_token'])) { return false; } return $response_params['access_token']; }
참고:
위 내용은 Offline_Access 지원 중단 후 Facebook 액세스 토큰 유효성을 어떻게 연장할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!