在Facebook JS SDK上,我试图检测用户在点击登录按钮(接受或拒绝)后关闭Oauth对话框的时间,因此有登录的属性:
<div class='fb-login-button" onlogin="function...">FB login</div>
但是这种方法非常糟糕!而且我没有发现任何事件或迹象表明我可以在没有元素属性的情况下做到这一点......
如果用户已连接到应用,则会在启动时调用other events相关:auth.authResponseChange和auth.statusChange。并且永远不会调用事件auth.prompt(我正在尝试报告有关此问题的错误,但bug report page已被错误调整...)。
这个剧本也是如此:
$('.fb-login-button').each(function() {
var oldLoginFn = this.onlogin || $.noop();
this.onlogin = function () {
//my instructions...
return oldLoginFn.apply(this, arguments);
}
});
是检测Oauth对话框返回的最佳方法吗?确实没有事件可以检测登录操作?
答案 0 :(得分:1)
您需要允许运行Facebook JavaScript SDK的URL。要执行此操作,请在http://developers.facebook.com/apps下的“设置 - 基本 - 基本信息”下编辑您的Facebook应用,将所有网址放在“应用领域”字段中,例如www.yourdomain.com,yourdomain.com。
并非您在此处放置的网址必须来自“基本信息”设置下方的“网站网址”字段,位于“选择您的应用与Facebook集成的方式” - “使用Facebook登录的网站”
Facebook已记录在您不允许使用网址时尝试运行应用时显示的错误。要查看此日志,请转到浏览器控制台并查看日志
享受