在处理oauth请求时,Facebook会生成“发生错误。请稍后再试”

时间:2012-02-11 18:33:13

标签: facebook facebook-php-sdk facebook-oauth

这已经在SOF上讨论了,但是,我没有发现任何人有完全相同的问题。此外,现在已经超过2天了,所以我想问一下。

  1. 应用程序正在沙箱中运行。更新:在无沙箱环境中也是如此。
  2. 无论我使用admindeveloper还是tester帐户,都无效。
  3. 无论用户是否已经授权应用程序,都不起作用。
  4. 在调用$fb->getLoginError()之前,$fb实例转储(Facebook PHP-SDK)如下所示:

    object(Facebook)#85 (7) {
      ["appId:protected"]=>
      string(15) "[removed for SOF display]"
      ["apiSecret:protected"]=>
      string(32) "[removed for SOF display]"
      ["user:protected"]=>
      int(0)
      ["signedRequest:protected"]=>
      NULL
      ["state:protected"]=>
      string(32) "[removed for SOF display]"
      ["accessToken:protected"]=>
      string(48) "[removed for SOF display]"
      ["fileUploadSupport:protected"]=>
      bool(false)
    }
    

    存在所有[removed for SOF display]信息。

    代码本身:

    $login_url      = $fb->getLoginUrl(array('scope' => $config->facebook['scope'], 'redirect_uri' => $redirect_uri ));
    
    echo '
        <noscript>javascript must be enabled.</noscript>
        <script type="text/javascript">top.location.href = \'' . addslashes($login_url) . '\';</script>
    ';
    

    getLoginUrl()生成的URL如下:

    https://www.facebook.com/dialog/oauth?client_id=[removed for SOF display]&redirect_uri=[removed for SOF display]&scope=publish_stream%2C+email%2C+user_birthday%2C+user_interests%2C+user_likes
    

    最烦人的是Facebook正在产生错误发生错误。请稍后再试,不附加任何其他信息。我甚至试图将$ login_url设置为像http://google.com/这样没有产生预期错误的愚蠢行为。同样发生错误。请稍后再试

    我一直在开发应用程序很长一段时间,这是我第一次遇到这样的问题。

1 个答案:

答案 0 :(得分:3)

错误原因是重定向URI http://facebook.com/[..]

通常,如果使用未经授权的域名,Facebook会产生错误,您必须将域名添加到Facebook应用设置App Domain。在这种情况下,它只会产生完全无用的An error occurred. Please try later