在 iframe 应用程序中使用 Facebooker 获取嵌套 iframe
有人在 Rails/Facebooker 应用程序中遇到过嵌套 iframe 吗? 基本上,每次我单击某个操作或链接时,整个 facebook 页面都会在我现有的 iframe 内重新加载,导致出现两个(每次后续单击时会出现更多)facebook 边框。
我已经将说明检查了三遍,并更改了所有可以想象的设置,但该应用程序仍然在 iframe 内的新 Facebook 页面中打开。有人有什么想法吗?
它仅在我使用
ensure_application_is_installed_by_facebook_user
过滤器时出现,但如果用户已经安装了该应用程序并且我使用了
ensure_authenticated_to_facebook
过滤器,它就可以正常工作......非常奇怪(至少对我来说)
Has anyone encountered nested iframes in their Rails/Facebooker application?
Basically, every time I click an action or link, the entire facebook page reloads inside my existing iframe, causing two (and more on each subsequent click) facebook borders to appear.
I've gone over the instructions three times and changed every setting imaginable, but the app still opens up in new facebook page inside the iframe. Any ideas anyone?
itonly appears when I use the
ensure_application_is_installed_by_facebook_user
filter, but if the user already has the application installed and I use the
ensure_authenticated_to_facebook
filter, it works fine...very strange (to me at least)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
事实证明,由于 Facebook API 的更改,ensure_application_is_installed_by_facebook_user 已被弃用。
我计划很快用这些信息更新 Facebooker 文档。
Turns out ensure_application_is_installed_by_facebook_user is deprecated because of a change in Facebook's API.
I plan to update the Facebooker documentation with this information soon.
我在嵌套 iframe 中遇到了同样的事情,所以我使用“ensure_authenticated_to_facebook”代替。唯一的问题是,用户安装应用程序后,它会将他们重定向到我的域,而不是 facebook iframe 页面。在 facebooker 中做了一些调整后,我决定在这个方法中硬编码 :canvas=>"true" ,该方法位于 lib/facebooker/rails/controller.rb 第 189 行,
我在我的博客中写了一个关于此修复的教程 - http://railsrant .com/2009/10/14/creating-a-facebook-iframe-app-using-ruby-on-rails-facebooker/
I experienced the same thing with nested iframes, so I used "ensure_authenticated_to_facebook" instead. The only gotcha was that after the user installed the app, it would redirect them to my domain and not the facebook iframe page. After doing some tweaking in facebooker, I decided to hard code :canvas=>"true" in this method which is in lib/facebooker/rails/controller.rb line 189
I wrote a tutorial on this fix in my blog - http://railsrant.com/2009/10/14/creating-a-facebook-iframe-app-using-ruby-on-rails-facebooker/