Facebook在iframe内登录(但在FB外)

时间:2011-06-23 23:48:13

标签: php facebook iframe

在我的应用程序的某个时刻,我使用iframe。在这个iframe中,一些Facebook的东西可能是有用的,为此,我使用图谱API很多。 问题是:当某人未登录到Facebook或尚未允许我的应用程序时,系统会提示他们点击“与Facebook连接”按钮。但是一旦他们点击它,iframe就会被破坏,首页将被Facebook登录页面取代。最终,首页被重定向到上一个iframe URL,但前一个父页面将永远丢失。 这是FB连接的预期行为吗? 有没有办法避免它或乱砍它? (也许使用弹出窗口而不是iframe,但听起来很丑陋(比iframe更丑))。

我目前正在使用PHP SDK

非常感谢

1 个答案:

答案 0 :(得分:2)

以下是打开弹出窗口的解决方案:

https://developers.facebook.com/docs/reference/javascript/FB.login/

通过在click事件中触发以下代码的元素:

FB.login( callback );

它应该打开一个弹出窗口,其中包含用于登录/授权您的应用的表单。

所以它涉及不使用(已弃用的)FBML替代方案。

关于iframe元素,我怀疑你会找到实现这个目标的方法。原因是facebook的脚本检查window.top.location是否在facebook域。