致命错误:未捕获OAuthException:验证访问令牌时出错。在第543行的/home/techtud1/public_html/library/facebook.php中引用
我是facebook开发的新手,但我正在使用本教程的确切步骤 http://www.joeyrivera.com/2010/facebook-graph-api-app-easy-w-php-sdk/ 当我试图获得用户的信息时,我得到了一次,但当我再次尝试时,我得到了这个错误。无论我在做什么,我都会收到这个错误
帮助PZ
答案 0 :(得分:2)
我遇到了这个问题,在我的案例中解决了这个问题的是从FB用户的个人资料中删除应用程序并再次添加它创建一个新的ACCESS_TOKEN。我不知道为什么,但这解决了问题。
答案 1 :(得分:1)
如果您的应用程序是FBML,则header()不起作用。您需要使用fb:redirect
http://developers.facebook.com/docs/reference/fbml/redirect/
答案 2 :(得分:0)
我建议你从官方facebook php-sdk example.php
开始学习。
我发现开球和直接前进要容易得多。
答案 3 :(得分:0)
检查此
$app_id = "YOUR_APP_ID";
$app_sec = "APP_SEC";
$canvas_page = "APP_CANVAS_PAGE_URL";
$scope = "&scope=user_photos,email,publish_stream";
$auth_url = "http://www.facebook.com/dialog/oauth?client_id=" . $app_id . "&redirect_uri=" . urlencode($canvas_page) . $scope;
$signed_request = $_REQUEST["signed_request"];
list($encoded_sig, $payload) = explode(".", $signed_request, 2);
$data = json_decode(base64_decode(strtr($payload, "-_", "+/")), true);
if (empty($data["user_id"]))
{
echo("");
}
$access_token = $data["oauth_token"];
$user_id = $data["user_id"];
$user = json_decode( file_get_contents( "https://graph.facebook.com/me?access_token=" . $access_token ) );
function get_facebook_cookie($app_id, $application_secret)
{
$args = array();
parse_str(trim($COOKIE["fbs" . $app_id], "\""), $args);
ksort($args);
$payload = "";
foreach ($args as $key => $value) {
if ($key != "sig")
{
$payload .= $key . "=" . $value;
}
}
if (md5($payload . $application_secret) != $args["sig"])
{
return null;
}
return $args;
}
$cookie = get_facebook_cookie($app_id, $app_sec);