我正在使用 FB.login 在我的网站上登录 Facebook,它可以正常工作。
我可以通过 response.AuthResponse.accessToken 轻松获取 accessToken。
会话有效期为 2 小时。我从我读到的内容中了解到,使用 fb_exchange_token 您可以将其延长至 30 天或 60 天(我不确定哪个,我看到了两个数字)。
问题 1:这在 Javascript 中可行吗?我是否需要提供应用程序密码(我不想在 Javascript 中这样做,因为每个人都可以访问它)?有人可以提供一个代码片段来做到这一点吗?
我的计划是使用 ajax 将新获得的扩展令牌发送到 PHP,然后将其用于我正在执行的 PHP FQL 调用。目前我正在做:
$facebook = new Facebook(array('appId' => $app_id,'secret' => $app_secret));
$fql = 'SELECT first_name, last_name, movies, tv, FROM user WHERE uid =' . $uid;
$param = array('method' => 'fql.query','query' => $fql,'callback' => '');
$fqlResult = $facebook->api($param);
问题2:这可能是一个新手问题,但是如何在上面的PHP代码中使用ajax发送的新访问令牌?目前,我没有明确使用访问令牌并且一切正常(直到 2 小时到期)。
在此先感谢您的帮助,
里吉斯