我在Chrome上遇到了一个针对Facebook访问 token 的严重问题。以下是从中获取用户ID和访问 token 的代码。此访问 token 稍后用于访问各种facebook功能。
FB.getLoginStatus(function(response) {
if (response.status === 'connected') {
uid = response.authResponse.userID;
accessToken = response.authResponse.accessToken;
} else if (response.status === 'not_authorized') {
在chrome中,当我第一次加载页面时。访问 token 很好。但是当我刷新几次后,有时它会给我访问 token 作为0。因此,没有任何效果。有人可以帮我吗?
大卫
请您参考如下方法:
您可能希望尝试在页面加载时设置强制往返于Facebook服务器的往返,以便始终可以获取用户的最新状态。 JavaScript SDK会在用户第一次查看页面时自动缓存登录状态,但是您可以这样覆盖它:
FB.getLoginStatus(function(response) {
// this will be called when the roundtrip to Facebook has completed
}, true);
只要确保强制往返不会增加太多不必要的延迟!您可以在页面上阅读更多关于 FB.getLoginStatus()的信息。关于强制往返的部分大约在页面的中间。
编码愉快!