有没有人在他们的Rails / Facebooker应用程序中遇到过嵌套的iframe? 基本上,每次单击某个操作或链接时,整个Facebook页面都会重新加载到我现有的iframe中,导致两个(以及每个后续点击时更多)facebook边框出现。
我已经完成了三次指示并更改了可以想象的每个设置,但应用程序仍然在iframe内的新Facebook页面中打开。任何人的想法?
只在我使用
时出现ensure_application_is_installed_by_facebook_user
过滤,但如果用户已经安装了应用程序并且我使用
ensure_authenticated_to_facebook
过滤器,它工作正常......非常奇怪(至少对我而言)
答案 0 :(得分:1)
由于Facebook的API发生了变化,因此不推荐使用ensure_application_is_installed_by_facebook_user。 我计划很快用这些信息更新Facebooker文档。
答案 1 :(得分:1)
我对嵌套的iframe经历了同样的事情,所以我使用了“ensure_authenticated_to_facebook”来代替。唯一的问题是,在用户安装应用程序后,它会将它们重定向到我的域而不是facebook iframe页面。在facebooker做了一些调整之后,我决定硬编码:canvas =>“true”在这个方法中,这是在lib / facebooker / rails / controller.rb第189行
def create_new_facebook_session_and_redirect!
session[:facebook_session] = new_facebook_session
next_url = after_facebook_login_url || default_after_facebook_login_url
#top_redirect_to session[:facebook_session].login_url({:next => next_url, :canvas=>params[:fb_sig_in_canvas]}) unless @installation_required
top_redirect_to session[:facebook_session].login_url({:next => next_url, :canvas=>"true"}) unless @installation_required
false
end
我在博客中写了一篇关于此修复程序的教程 - http://railsrant.com/2009/10/14/creating-a-facebook-iframe-app-using-ruby-on-rails-facebooker/