【问题标题】:The URL canvas of a Facebook app redirects to my own: developed in CakePHPFacebook 应用程序的 URL 画布重定向到我自己的:用 CakePHP 开发
【发布时间】:2011-11-22 04:29:58
【问题描述】:

我使用 CakePHP 开发了一个 Facebook 应用程序(带有 iframe)。当应用打开并显示免费发送 SMS 的表单时,我会收到一些 Facebook 用户信息。

因此,用户必须先在 Facebook 中进行身份验证,然后才能继续使用应用程序。

我正在使用 Facebook SDK php(版权所有 2004-2008 Facebook。保留所有权利。)

当用户丢失身份验证会话时,我如何避免 Facebook 重定向到我自己的网站?

【问题讨论】:

    标签: php facebook session cakephp authentication


    【解决方案1】:

    您是否让用户使用 FB 登录弹出窗口和 FB 授权码?

    不确定这是否适用于您的情况,但在 loginURL 代码中,您可以传入一个 redirect_uri,它可能指向您希望他们在完成登录和身份验证过程后转发到的页面。

        $url = $facebook->getLoginUrl(array('scope'=>'offline_access,publish_stream,email',
                        'redirect_uri'=>'https://www.mysite.com/mysite/'));
    

    希望这就是您想要的。

    【讨论】:

    • 我希望他/她在画布上使用我的应用程序留在 fb 网站上。例如,我的画布 URL 是:apps.facebook.com/fbsmscuba,我自己的 URL 是:fbcuballama.coordenadaslatinas.com/fbusers 当会话过期时,用户从 fb 重定向到我自己的 URL....我希望他/她继续在 facebook 中使用我的应用程序画布
    • 您正在寻找用户在身份验证后留在“apps.facebook.com/fbsmscuba”?我希望 redirect_uri 参数可以为您提供。如果没有,那么这将是 FB 会做的事情。不知道如何解决。
    • 我遇到了类似的问题,即在应用程序中使用来自 FB 的新 https 和 iframe 配置,当用户提交表单时,它会从 apps.facebook.com/myapp 转到我在 FB 之外的服务器。我了解这个问题,但还没有找到解决方案。
    • 我已经下载并测试了以下示例:thinkdiff.net/facebook/… ...问题继续...一旦用户登录 facebook,他/她将被重定向到自己的站点.. . 他/她没有留在 facebook 网址中...这很奇怪...
    【解决方案2】:

    除了最后一行,我理解问题中的所有内容。什么意思:

    当用户丢失身份验证会话时,我如何避免 Facebook 重定向到我自己的网站?

    如果您使用 facebook 获取登录凭据,则需要重定向到您自己的网站。这是一个 facebook 安全规则,你可以想象它为什么存在。

    对于任何花哨的东西,您都需要使用 facebook“服务器端”流程。这很简单:

    http://developers.facebook.com/docs/authentication/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-10
      • 2013-04-23
      • 1970-01-01
      • 1970-01-01
      • 2013-07-12
      • 1970-01-01
      相关资源
      最近更新 更多