首先我订阅auth.authResponseChange
和auth.statusChange
。
我的 Init 调用如下所示:
FB.init({
appId : app_id,
status : true,
cookie : true,
channelUrl : 'http://domain.com/channel.html',
frictionlessRequests:true,
xfbml : false
});
当以用户身份登录时,它工作正常。
但是,当作为页面登录auth.authResponseChange
并且auth.statusChange
永远不会被调用时。我也尝试过设置status: false
和调用FB.getLoginStatus(callback_function)
,但从未调用过回调函数。
我很确定这是一个错误,但是有解决方法吗?
还值得一提 - 我在控制台中收到以下错误:
拒绝显示文档,因为 X-Frame-Options 禁止显示。
我将标题添加X-Frame-Options: GOFORIT
到我的页面,但错误仍然存在。
以下 SO 问题是相关的,但答案并没有真正帮助:
上面的最后一个链接说调用 FB.login() 如果用户作为页面登录,它将自动警告用户。但是,调用login()正是我试图避免做的事情。
稍后补充:Facebook 认为这个 bug 已经修复。