php - 未捕获的 OAuthException - 如何捕获此错误?

标签 php api facebook-graph-api error-handling facebook-oauth

我有以下错误。我应该如何捕获此错误?

Fatal error: Uncaught OAuthException: Error validating access token: User 638720122 has not authorized application 207445576002891. thrown in /var/www/clients/client1/web12/web/socialmediaping/fblibrary/base_facebook.php on line 1039

我有下面的代码片段,我相信我确实在尝试管理错误。

// Attempt to query the graph:
$graph_url = "https://graph.facebook.com/me?"
  . "access_token=" . $access_token;
$response = curl_get_file_contents($graph_url);
$decoded_response = json_decode($response);

//Check for errors 
if ($decoded_response->error) {
    $facebookAuth = FALSE;
}  

如果 $facebookAuth == FALSE,我将用户重定向到 facebook 以进行授权,但这不起作用,那么我应该做什么?

非常感谢您的帮助。

最佳答案

别搞砸你的 base_facebook.php!只需在图形调用周围使用 try/catch block :

try {

    // check if facebook can get user
    $facebookUser = $facebook->getUser();
    $facebookUser = $facebook->api('me?fields=id,first_name,last_name');

} catch (Exception $e) {
    // user is not logged in
}

关于php - 未捕获的 OAuthException - 如何捕获此错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8490674/

相关文章:

php - 注释不同 Symfony 2/Doctrine 2

php - 查询返回 null 或错误

Javascript 获取一个数组

php - 将数组保存到 MySQL 字段

objective-c - uiwebview 如何获取访问 token 以喜欢 facebook 页面(通过 iFrame)?

php - Doctrine 的 Symfony Bundle repo 发生了什么?

php - simplexml_load_string 不解析我的 XML 字符串。字符集问题?

php - Laravel 护照 : Create access token manually

azure - 我可以使用一个访问 token 访问多个 API 吗?

iphone - Facebook Graph API 无法点赞