private static function validateToken($accessToken, $userId = null) { $fb = Facebook::getFb(); // The OAuth 2.0 client handler helps us manage access tokens $oAuth2Client = $fb->getOAuth2Client(); // Get the access token metadata $tokenMetadata = $oAuth2Client->debugToken($accessToken); // Get the metadata associated with the access token. // echo '<h3>Metadata</h3>'; IubarFattureApp::getInstance()->log->debug('\\$tokenMetadata: ' . @r($tokenMetadata)); try { $tokenMetadata->validateAppId(Facebook::$appId); // Nota: il metodo non ritorna nulla, solo un'eccezione se la validazione fallisce if ($userId) { $tokenMetadata->validateUserId($userId); // Nota: il metodo non ritorna nulla, solo un'eccezione se la validazione fallisce } $tokenMetadata->validateExpiration(); // Nota: il metodo non ritorna nulla, solo un'eccezione se la validazione fallisce } catch (FacebookSDKException $e) { // Probabile tentativo di hackergaggio; echo "<p>Error validating the token: " . $helper->getMessage() . "</p>\n\n"; exit; } return true; }