如何在不调用FB.getLoginStatus和提示用户访问公共信息的情况下获取facebook用户id

如何在不调用FB.getLoginStatus和提示用户访问公共信息的情况下获取facebook用户id,facebook,Facebook,我正在开发asp.net网站成为facebook应用程序 我正试图让“像Facebook一样的门”在用户可以看到应用程序之前就提示他喜欢我的页面。比如说 问题是,上面的应用程序不允许我获得获取基本信息的权限,但我必须提示用户授予我此类权限,然后我才能使用以下代码获取用户id并检查他是否已经喜欢我的页面: function checkFBlike() { //FB.login FB.getLoginStatus(function (response) { var

我正在开发asp.net网站成为facebook应用程序

我正试图让“像Facebook一样的门”在用户可以看到应用程序之前就提示他喜欢我的页面。比如说

问题是,上面的应用程序不允许我获得获取基本信息的权限,但我必须提示用户授予我此类权限,然后我才能使用以下代码获取用户id并检查他是否已经喜欢我的页面:

function checkFBlike() {

    //FB.login
    FB.getLoginStatus(function (response) {

        var r = response;

        if (response.status == "connected") {

            var user_id = response.authResponse.userID;
            var page_id = "341342102543433"; //341342102543433            168619489865949
            var fql_query = "SELECT uid FROM page_fan WHERE page_id = " + page_id + "and uid=" + user_id;
            var the_query = FB.Data.query(fql_query);

            the_query.wait(function (rows) {

                if (rows.length == 1 && rows[0].uid == user_id) {
                    //jQuery("#container_like").show();
                    fbLikeGateHide();
                    //here you could also do some ajax and get the content for a "liker" instead of simply showing a hidden div in the page.

                }
                else {

                    //and here you could get the content for a non liker in ajax...
                }
            });


        } else if (response.status === 'not_authorized') {
            // the user is logged in to Facebook, but not connected to the app
            showFbLogin();  //display Facebook Login button 

        }
        else {
            // user is not logged in
        }
    });


}

function showFbLogin(){
    FB.login(function(response) {
        var r=response;
    });
}

由于您将像雅芳应用程序(特别是页面选项卡应用程序)一样,因此您应该查看来自HTTP POST的
signed_请求
参数,当您的页面是画布应用程序时,Facebook会这样做。你真的不需要做任何客户端检查


有关签名请求的更多信息,请参阅:

因为您将像雅芳应用程序(特别是页面选项卡应用程序)一样,所以您应该查看来自HTTP POST的
签名请求
参数,当您的页面是画布应用程序时,Facebook会这样做。你真的不需要做任何客户端检查


有关签名请求的更多信息,请参阅:

感谢您的回复。但是在我将以下代码添加到我的web.config中之后:我终于解决了我的问题-问题是在我的网站中重定向。感谢您的回复。但在我将以下代码添加到web.config之后:我终于解决了我的问题——问题是在我的网站中重定向。