facebook登录按钮获取邮箱的方式

admin6年前IT技术2219

由于公司英语商城要做免注册登录,我就想到了facebook,按照官方的文档,一步一步做下去,心情很好,竟然没有坑,但是我高兴的太早了,上线测试了一下发现无法获取用户的邮箱与头像,那有什么用呢.

然后就是查官方,文化差异,那文档就不是写给你中国人看的,最后经过2个多小时的的折腾,终于搞出来了,直接上代码

  (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 = "https://connect.facebook.net/en_US/sdk.js";
    fjs.parentNode.insertBefore(js, fjs);
  }(document, 'script', 'facebook-jssdk'));

  // Here we run a very simple test of the Graph API after login is
  // successful.  See statusChangeCallback() for when this call is made.
  function testAPI() {
    console.log('Welcome!  Fetching your information.... ');
    FB.api('/me?fields=name,picture,email', function(response) {
      console.log(response);
      document.getElementById('status').innerHTML =
        'Thanks for logging in, ' +response.name+"<br>"+response.email+"<br>"+'<img src="'+ response.picture.data.url + '">';
    });
  }

 

关键是FB.api('/me?fields=name,picture,email', function(response) {

官方竟然没有给出这个M文档!!!!!

官方文档https://developers.facebook.com/docs/facebook-login/permissions/#reference-default

授予您的应用访问User对象的默认字段的权限,这些字段是人员公开个人资料的子集:

  • id
  • first_name
  • last_name
  • middle_name
  • name
  • name_format
  • picture
  • short_name

 

相关文章

解决Centos7系统更新时报错:Could not resolve host: mirrorlist.centos.org; 未知的错误

1、背景        centos7系统在执行:sudo yum update,发生错误;1.1、错误描述       ...

汇成企业网站管理系统v46

汇成企业网站管理系统v46官方下载:˂a href="download/huichengv46.rar" target="_blank"˃下载地址一汇成企业网站管理系统v4.6汇成企业网站管理系统为中...

mysql数据库的还原与备份的注意事项

mysqldump -R -u root -p  *** > ***.sql   指定数据库的备份,包括存储过程.mysqldump  -u root -...

phptool phpfmt这两个插件会导致sublime出问题

 phptool 会让sublime产生垃圾文件phpfmt会导致sublime出死机,但是他能修正错误的PHP写法,要区别对待他,但是一个文件页面代码多了,他会导致sublime死机...

MYSQL删除数据库记录为空

delete from  name where fy_cn is NULL || LENGTH(trim(fy_cn))=1 MySql判断是否为null或空字符串 &n...

windows 10清除系统盘,增加系统盘空间的方法

管理员模式cmd  执行 powercfg.exe /hibernate off虚拟内存大小设置为100-120MB     &n...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。