【问题标题】:How to show an OAuth dialog for a Facebook application accessed via a fan page tab?如何为通过粉丝页面选项卡访问的 Facebook 应用程序显示 OAuth 对话框?
【发布时间】:2012-06-20 13:14:56
【问题描述】:

我正在开发一个 Facebook 应用程序作为页面选项卡应用程序。我想在用户通过粉丝页面访问应用程序之前显示OAuth 对话框。我该怎么做?

对于画布应用程序,当我从应用程序设置(增强型身份验证对话框)启用 OAuth 对话框时,当通过 apps.facebook.com/myapp 访问应用程序时会显示 OAuth 对话框。但是当我使用页面访问同一应用程序时在粉丝页面中添加选项卡时,不会显示 OAuth 对话框。

【问题讨论】:

    标签: facebook oauth facebook-page


    【解决方案1】:

    查看教程Canvas Tutorial

    关键技巧是您需要定位“_top”窗口(在 iframe 之外)...例如,

    echo('<script> top.location.href="' . $auth_url . '"</script>');
    

    echo('<a target="_top" href="' . $auth_url . '">Authorize this application...</a>');
    

    据我所知,您无法在 iframe 内完成此授权流程。

    我还建议观看来自 Facebook Developer Garage: Paris (2011-03-29) 的短视频 Authentication: An Overview

    如果您想请求身份验证(或在身份验证后添加一些额外的权限),请参阅两个 JavaScript SDK 函数,FB.getLoginStatusFB.login。请注意FB.login 会启动一个弹出窗口——因此它必须由用户click 事件触发(或者某些浏览器会阻止弹出窗口)。这种方法的好处是它不需要页面重定向 - 弹出窗口会在不重新加载的情况下返回响应。

    【讨论】:

      猜你喜欢
      • 2012-01-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-29
      • 1970-01-01
      • 2010-12-01
      • 1970-01-01
      相关资源
      最近更新 更多