<?php
require_once"includes/strings.php";
require_once"php/function.php";
require_once"php/config.php";
require_once"php/app.php";
$currentFBuserid = "0";
///////FACEBOOK GET USER INFORMATION
session_start();
// Enter the app id and secret below
define('YOUR_APP_ID', '$fbAppID');
define('YOUR_APP_SECRET', '$fbAppSecret');
require_once"php/fbsdk/src/facebook.php";
$facebook = new Facebook(array(
'appId' => $fbAppID,
'secret' => $fbAppSecret,
));
$userId = $facebook->getUser();
if($userId){
$userInfo = $facebook->api('/' + $userId);
}
好的问题很简单,每两个小时一次,我想会话在我的网站上过期,并且出现错误“致命错误:未捕获OAuthException:错误验证访问令牌:会话已在unix时间1352329200过期。
当前的unix时间是1352330589.在第1238行的/home/######/public_html/php/fbsdk/src/base_facebook.php中抛出“
无论我多长时间抓住这个网站,我都无法找出问题所在。
BTW :(刷新页面解决了问题)
我真的需要帮助。 谢谢!
答案 0 :(得分:0)
好的问题很简单,每两个小时一次,我想会话在我的网站上过期,并且出现错误“致命错误:未捕获OAuthException:错误验证访问令牌:会话已在unix时间1352329200过期。
使用客户端流程获取的用户访问令牌将在两小时后过期。
您可以扩展它们,也可以使用服务器端流程 - 两者都会产生一个有效期为60天的令牌。
https://developers.facebook.com/roadmap/offline-access-removal/
(最新版本的PHP SDK有一个名为setExtendedAccessToken
的方法,用于扩展短期令牌。)
BTW :(刷新页面解决了问题)
如果您使用JS SDK进行登录,那么刷新当然会让它对Facebook进行新的跨域请求,并且会获得一个新的短期访问令牌。