如何使用最新的 php SDK 从 facebook 获取 fbid、姓名、电子邮件

How to get fbid, name, email from facebook using latest php SDK

需要帮助。

如何使用 php sdk

在登录时获取 facebook 电子邮件
  1. 包含java脚本FB SDK:

    <script>(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = "http://connect.facebook.net/en_US/all.js#xfbml=1&appId=PLACE_YOUR_FB_APP_ID"; fjs.parentNode.insertBefore(js, fjs); }(document, 'script', 'facebook-jssdk'));</script>

  2. 发起link连接Facebook:

    <script>function FBLogin(){

       FB.login(function(response){
    
         if(response.authResponse){
    
            var USERID  =   response.authResponse.userID;
    
            FB.api('/me', function(userinfo){
                jQuery.ajax({
    
                type:"POST",
    
                url: "ajax_fb_login.php",
    
                data:  "userinfo="+userinfo,
    
                success: function(html){
    
                }
              });
            });
            } 
        }, {scope: 'email,user_likes'});
    }</script>
    
  3. 在您的 php 文件中检索 facebook 数据:

    $fbid = $_REQUEST['userinfo']['id']; $email = $_REQUEST['userinfo']['email']; $first_name = $_REQUEST['userinfo']['first_name']; $last_name = $_REQUEST['userinfo']['last_name']; $fb_name = $_REQUEST['userinfo']['name'];

在更新日志中搜索 "Declarative Fields":https://developers.facebook.com/docs/apps/changelog#v2_4

您必须指定要获取的字段,否则您将只获取 ID 和姓名。例如:

/me?fields=name,email