我从facebook SDK获得此例外:
Fatal error: Uncaught OAuthException: (#506) Duplicate status message thrown in [...] src/base_facebook.php on line 1033
如何在打印此邮件之前捕获异常? 我想把它改成这样的东西:
应用程序的响应仍然相同,因此我们无法再次将其发布到您的墙上:)
顺便说一下,有一个方法(下面)处理所有异常,我只希望这个新消息针对那个特定情况。
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
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;
}
感谢。
答案 0 :(得分:2)
您将抛出异常的代码放在try
块中,然后使用catch
块捕获它:
try
{
// Code goes here
}
catch (OAuthException $e)
{
// Stuff to do with exception
}