Php Facebook登录错误(CSRF状态令牌与提供的令牌不匹配。)
通过本教程,我第一次学习了使用PHP的Facebook API。 这意味着我所做的唯一一件事就是输入AppID和秘密。但是,当我将其上载到web服务器000webhost.com时,它在错误日志中给了我一个错误:CSRF状态令牌与提供的令牌不匹配Php Facebook登录错误(CSRF状态令牌与提供的令牌不匹配。),php,facebook,csrf,facebook-login,Php,Facebook,Csrf,Facebook Login,通过本教程,我第一次学习了使用PHP的Facebook API。 这意味着我所做的唯一一件事就是输入AppID和秘密。但是,当我将其上载到web服务器000webhost.com时,它在错误日志中给了我一个错误:CSRF状态令牌与提供的令牌不匹配 <?php require("src/facebook.php"); $config = array( 'appId' => '(app id here)', 'secret' => '(app se
<?php
require("src/facebook.php");
$config = array(
'appId' => '(app id here)',
'secret' => '(app secret here)',
'fileUpload' => false, // optional
'allowSignedRequest' => false, // optional, but should be set to false for non-canvas apps
);
$facebook = new Facebook($config);
$user_id = $facebook->getUser();
if($user_id) {
// We have a user ID, so probably a logged in user.
// If not, we'll get an exception, which we handle below.
try {
$user_profile = $facebook->api('/me','GET');
echo "<pre>";
print_r($user_profile);
echo "</pre>";
} catch(FacebookApiException $e) {
// If the user is logged out, you can have a
// user ID even though the access token is invalid.
// In this case, we'll get an exception, so we'll
// just ask the user to login again here.
$login_url = $facebook->getLoginUrl();
echo 'Please <a href="' . $login_url . '">login.</a>';
error_log($e->getType());
error_log($e->getMessage());
}
} else {
// No user, print a link for the user to login
$login_url = $facebook->getLoginUrl();
echo 'No Log. Please <a href="' . $login_url . '">login.</a>';
}
?>
我该怎么办?什么是src/facebook.php?是官方SDK吗?是您应该遵循的唯一教程,而不是一些随机的YouTube垃圾,文件托管在depositfiles上。comsrc是一个文件夹,而facebook.php是该文件夹中的一个文件。php有评论说版权归2011年Facebook,Inc.所有,所以我假设它是官方SDK的一部分。事实上,我从上面的链接下载了Youtube教程的源代码,这对他来说是有效的,但对我来说不是。听起来这是一个过时的库。请按照我评论中链接处的教程查找最新的内容