繁体   English   中英

如何使用Cake PHP获取fbml中的电子邮件地址和用户ID

[英]how to get the email address and the user Id in fbml using cake php

我使用了一个JavaScript函数,该函数在Facebook connect登录后即被调用。

    var FB_API_KEY = "api key";
var FB_CHANNEL_PATH = "xd_receiver.htm";

FB.init(FB_API_KEY, FB_CHANNEL_PATH, {permsToRequestOnConnect : "email"});
FB.Connect.ifUserConnected(FB_ConnectPostAuthorization);

function FB_ConnectPostAuthorization() {

    var user_box = document.getElementById("user_id");
    user_box.innerHTML = 
    "<span>"
    +"<fb:profile-pic uid='loggedinuser' facebook-logo='true'></fb:profile-pic>"        
    +"Welcome , <fb:name uid ='loggedinuser' useyou='false'></fb:name>" 
    +"You are signed in with your facebook account"
    +"</span>";

    FB.XFBML.Host.parseDomTree();


    FB_RequireFeatures(["Api"], function(){
        var api = FB.Facebook.apiClient;
        var fb_uid = api.get_session().uid;

        $.post('/users/fb_login/', {'fb_uid': fb_uid}, function(response) {
            if (response != "yes") {
                api.users_hasAppPermission("email", function(result) {
                    if (!result) {
                        FB.Connect.showPermissionDialog("email", redirect_to_done_page);
                    } else {
                        redirect_to_done_page()
                    }
                })
            } else {
                redirect_to_done_page()
            }
        });
    });       
}

function redirect_to_done_page() {
    window.location = "xyz";
}

我添加了一个调用上述功能的facebook连接按钮。

我只能通过fbml标签获得用户名和个人资料照片。 如何获取用户电子邮件和用户ID。

请指导我。

我认为您无法通过fbml获得电子邮件,因为有了它,您只能显示它,没有任何意义。

实际上,您需要在FB API中包含一个PHP部分,可以帮助您完成该任务。

尽管您可以为CakePHP使用这个非常好的插件 使它正常工作真的很容易,而且您可以肯定地获得用户的电子邮件。

我从未使用过FB API,但是如果他们发出电子邮件,我会感到惊讶。 哦,是Facebook。 我吃我的话。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM