Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Facebook登录弹出问题_Javascript_Facebook_Facebook Graph Api - Fatal编程技术网

Javascript Facebook登录弹出问题

Javascript Facebook登录弹出问题,javascript,facebook,facebook-graph-api,Javascript,Facebook,Facebook Graph Api,因此,我正在开发一个应用程序,需要从Facebook获得一些额外的权限。我有一个请求权限的按钮,通过回调执行一些函数。我遇到的问题是,如果用户allready授予了权限并再次单击buton,登录弹出窗口仍然会出现并立即关闭。在执行FB.login命令之前,我找到了一种检查用户是否有权限的方法(witch仅当用户没有权限时才会显示此弹出窗口),但随后我遇到弹出窗口阻止程序问题,因为我将FB.login调用放入该检查的else语句中 据我所知,FB.login必须处于相同的功能流中,以避免弹出窗口阻

因此,我正在开发一个应用程序,需要从Facebook获得一些额外的权限。我有一个请求权限的按钮,通过回调执行一些函数。我遇到的问题是,如果用户allready授予了权限并再次单击buton,登录弹出窗口仍然会出现并立即关闭。在执行FB.login命令之前,我找到了一种检查用户是否有权限的方法(witch仅当用户没有权限时才会显示此弹出窗口),但随后我遇到弹出窗口阻止程序问题,因为我将FB.login调用放入该检查的else语句中

据我所知,FB.login必须处于相同的功能流中,以避免弹出窗口阻止程序

这是我的密码:

$('#shareList').click(function (event) {
    FB.api('/me/permissions', function (data) {
        if (data.data[0].photo_upload == 1) {
            $.uploadPic();
            //return false;
            //event.stopPropagation();
        }
    });

    FB.login(function (response) {
        if (response.authResponse) {
            $.uploadPic();
        } else {
            alert('Tekkis viga');
        }
    }, {scope:'photo_upload'});

    return false;
});

理想情况下,如果该函数落入
photo\u upload
check的检查中,我希望停止该函数,然后继续登录调用。我确实尝试了return false和event.stopPropagation(),但它们似乎不起作用。这个问题的解决方案是什么?

您正在寻找的函数是getLoginStatus,它将为已经通过身份验证/登录的用户构建Facebook会话


实际上,这并不是我想要的,因为我不是在检查登录状态,而是在检查权限。