Facebook에서받은 offline_access 토큰이 유효하지 않을 수 있음을 알고 있습니다 (예 : 사용자가 비밀번호를 변경 한 경우). 이 경우 나는 던져진 예외를 잡아 내 사이트의 사용자에게 다시 권한을 부여해야합니다.offlineAccess 토큰이 유효하지 않은 OAuthException
그렇다면 정확한 오류 코드/메시지는 무엇입니까? 나는 그것이 OAuthException
인 것을 알고있다. 그러나 코드를 얻을 수 없었다. 많은 다른 OAuthException
-s가 있기 때문에 형식 만 사용할 수 없습니다.
내 계획은 다음과 같습니다 base_facebook.php
를 변경하고 추가 할 경우 여기 핸들 - 보내고 코드 :
protected function throwAPIException($result) {
$e = new FacebookApiException($result);
switch ($e->getType()) {
// OAuth 2.0 Draft 00 style
case 'OAuthException':
// OAuth 2.0 Draft 10 style
/*
* Need to add an appropriate case here.
*/
case 'invalid_token':
$message = $e->getMessage();
if ((strpos($message, 'Error validating access token') !== false) ||
(strpos($message, 'Invalid OAuth access token') !== false)) {
$this->setAccessToken(null);
$this->user = 0;
$this->clearAllPersistentData();
}
}
throw $e;
}
미안하지만, 이것은 내 질문에 대한 대답이 아닙니다. 물론 try-catch 블록에서 각 API 호출을 래핑하려고했습니다! 질문은 그 종류의 인증 문제를 잡는 정확한 예외가 무엇인지 ... – ArVan