PHP和facebook的异常处理
我有以下代码:PHP和facebook的异常处理,php,facebook,facebook-graph-api,facebook-fql,facebook-php-sdk,Php,Facebook,Facebook Graph Api,Facebook Fql,Facebook Php Sdk,我有以下代码: $fql = "SELECT first_name, last_name FROM user where uid=me()"; $sparam = array('method' => 'fql.query', 'query' => $fql, 'callback' => '', 'access_token' => $fbtoken); try{ $sfqlResult = $facebook -> api($sparam); } catch(
$fql = "SELECT first_name, last_name FROM user where uid=me()";
$sparam = array('method' => 'fql.query', 'query' => $fql, 'callback' => '', 'access_token' => $fbtoken);
try{
$sfqlResult = $facebook -> api($sparam);
}
catch(CurlException $e) {
echo 'There is issue with Token';
}
假设如果我的访问令牌出错,我想捕获异常,但它没有捕获异常并显示传统错误
致命错误:未捕获异常:190:无效的OAuth访问令牌。投入
这方面的任何帮助。您可以使用捕获异常
范例-
try {
$sfqlResult = $facebook -> api($sparam);
} catch(FacebookApiException $e) {
$e_type = $e->getType();
$result = $e->getResult();
error_log('Got an ' . $e_type . ' while posting');
error_log(json_encode($result));
}
但据我所知,存在与令牌相关的问题,将不会引发异常,但将在
$sfqlResult
中返回错误结果;您可以检查对象$sfqlResult->error代码>
if(!isset($sfqlResult['error']))
{
// no error
}
else
{
echo "Facebook error: ".$sfqlResult['error']->message;
}
如果其访问令牌相关问题,则不会向我抛出异常。您将在$sfqlResult
中得到错误响应,它抛出致命错误:未捕获异常:190:无效的OAuth访问令牌。我认为你应该先把注意力集中在错误上。我提到的代码主要负责所有事情。您是否使用正确的应用程序id和应用程序机密正确生成令牌?我知道,但如果令牌错误,请提交一个案例,我的用户将看到什么