嘿,Facebook 开发人员,
我已经阅读了数十个相关问题,并希望尝试了 developers.facebook.com 上的每个相关示例,但我无法让这个工作:
用户访问了我的网站并通过以下方式授权了我向他请求的权限
FB.login(callback, { scope: 'publish_actions,user_actions:news,user_interests' });
打电话后
FB.init({ appId: 'xxx', // App ID status: true, // check login status cookie: true, xfbml: true // parse XFBML });
我现在可以成功请求一个在一段时间内有效的访问令牌,并使用它来查询有关用户的各种信息。
无需在任何地方(Facebook 或我自己的网站)注销,如果我现在再次导航到该页面(或只是点击重新加载),我希望立即能够使用
FB.getLoginStatus(callback)
并收到 的响应
connected
。据我了解,用户不应该再点击任何东西。
不过,我得到的是unknown
. 无论在什么浏览器中,无论我使用的是真正的开发人员资料还是 Facebook 测试用户。
我也订阅了这些事件auth.authResponseChange
,auth.statusChange
但它们只有在我明确调用时才会触发FB.login()
。
它在Facebook SDK 文档中的示例中说,我FB.init()
从上面应该已经从 Facebook 获得了有关页面加载时间的必要信息,并且事件应该相应地触发。
由于我已经尝试了很多示例并且真的认为我理解文档,所以我看不出错误发生在哪里。
有什么我遗漏的东西,我有什么误解或我应该注意的时间问题吗?
附带说明一下,我已经尝试了比提到的 Facebook 事件更多的尝试,通过 强制状态更新FB.getLoginStatus(callback, true)
,通过在 Chrome 的 Javascript 控制台中输入代码逐步运行代码以及来自 SO 和 Facebook 论坛的更多建议。