0
我從Facebook SDK得到這個異常:如何從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;
}
謝謝。
肯定,但問題是,有一個處理所有的異常和方法對於所有例外情況,將顯示您正在說的消息的方式。 – Bagata 2012-04-03 09:45:19
我不確定你的意思。上面的代碼將捕獲'try'塊中拋出的任何'OAuthException'。這不是你想要的嗎? – MichaelRushton 2012-04-03 09:46:52
我只想捕捉「重複狀態消息」的情況。你有看到? – Bagata 2012-04-03 09:48:46