Facebook PHP oauth不适合某些用户

时间:2012-11-22 04:32:38

标签: facebook facebook-oauth

用户a - 应用的管理员 在HTTP上运行应用程序

getUser()给出了用户ID

用户b - 不是管理员 在HTTP上运行应用程序

getUser()给出零,URL就是这样& error_reason = user_denied& error = access_denied& error_description = +用户+拒绝+你的+请求。& state = 32423dfs23423dsaaw# =

以下是授权用户的代码用户

 $facebook = new Facebook(array(
      'appId'  => '',
      'secret' => '',
      'cookie' => true
    ));

 $user = $facebook->getUser();
    $loginUrl   = $facebook->getLoginUrl(
            array(
                 'scope' => 'publish_stream,email',
                 'redirect_uri' => 'https://www.facebook.com/pages/test?sk=app_23423423'

            )
    );


   if (!$user) {?>
  <a href="<?php echo $loginUrl ?>">Facebook Login</a>
            else
            {
                 echo "<script type='text/javascript'>location.href = 'test.php?Id=$user'</script>";  

            }
                   }

1 个答案:

答案 0 :(得分:1)

每当你得到

  

错误= ACCESS_DENIED

在来自Facebook的$ _REQUEST中,您将无法获得用户ID,这是因为用户已登录或授权您的应用,以便您可以检索用户ID。这与没有用户登录时的情况相同。您可以分别从$ _REQUEST ['error_reason']和$ _REQUEST ['error_description']获取原因和描述,以向用户或您的记录显示更多详细信息。