Php 检查用户是否在未请求权限的情况下登录-facebook

Php 检查用户是否在未请求权限的情况下登录-facebook,php,facebook,api,sdk,permissions,Php,Facebook,Api,Sdk,Permissions,我在Facebook上创建了一个应用程序,但在请求权限之前,我想检查用户是否登录并执行一些任务 我试过这个: $facebook = new Facebook(array( 'appId' => $app_id, 'secret' => $secret, 'cookie' => true )); $user = $facebook->getUser();

我在Facebook上创建了一个应用程序,但在请求权限之前,我想检查用户是否登录并执行一些任务

我试过这个:

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


    $user = $facebook->getUser();
    if ($user) {
      echo 'logged in';
    } else {
      echo 'not logged in';
    }
但它总是请求权限。

我使用了以下代码:

<div id="fb-root"></div>
<script>
window.fbAsyncInit = function() {
    FB.init({
      appId      : 'xxxxxxx', // App ID
      channelUrl : 'YOUR_URL/channel.html', // Channel File
      status     : true, // check login status
      cookie     : true, // enable cookies to allow the server to access the session
      xfbml      : true  // parse XFBML
    });


    FB.getLoginStatus(function(response) {
        if (response.status === 'connected') {
                    //User Is Logged In and authorized
            var uid = response.authResponse.userID;
        } else if (response.status === 'not_authorized') {
            //User is Logged in and not authorized
        } else {
            // the user isn't logged in to Facebook.
        }
    });
};
</script>

window.fbAsyninit=函数(){
FB.init({
appId:'xxxxxxx',//应用程序ID
channelUrl:'您的\ URL/channel.html',//频道文件
状态:true,//检查登录状态
cookie:true,//启用cookie以允许服务器访问会话
xfbml:true//解析xfbml
});
FB.getLoginStatus(函数(响应){
如果(response.status===“已连接”){
//用户已登录并获得授权
var uid=response.authResponse.userID;
}else if(response.status===“未授权”){
//用户已登录且未经授权
}否则{
//用户未登录到Facebook。
}
});
};

您的最小代码中绝对没有任何内容会导致请求权限。我知道,但他要求提供个人信息:\n谁是“他”?再次声明:您的代码中甚至没有登录/连接到您的应用程序,因此您发布的代码绝对无法再现您的问题。