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

admin6年前IT技术2078

由于公司英语商城要做免注册登录,我就想到了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

 

相关文章

汇成制造行业CMS企业建站系统v11.1

汇成制造行业企业网站cms系统v11.1管理地址:http://您的网站/admin/login.asp后台帐号:admin后台密码:admin演示地址:˂a href="ceshi/zhizhao/...

javascript 的array数组保存到mysql数据库

 第一步在javascript里创建数组 var wordList = new Array();1第二步给后台传送数据之前要把数组变成字符串形式   wordL...

亚马逊“傲娇”!拒绝与PayPal合作

一个平台如果没有自己的支付系统,是一个平台最大的悲剧,ebay这几年不行了,其他原因不好说,但是他长期使用paypal的支付接口,就说明是一大败笔,长期泄露自己的会员交易数据!!!! 亚马逊...

Windows10家庭版添加Hyper-V的详细步骤

Windows10家庭版添加Hyper-V的详细步骤

转http://www.xitongcheng.com/jiaocheng/win10_article_60078.htmlHyper-V是微软提出的一种系统管理程序虚拟化技术,可以降低运作成本、提高...

eWebEditor不支持IE-IE8-IE7-火狐-遨游的解决方法

昨天ie8正式发布了,偶也去下载了一个,感觉很爽, 还在美的时候,突然发现很多网页都出问题,更可气的是自己的网站编辑器也不管用了,所有的按钮都不管用,即使是别的浏览器也都不管用,我这叫一个汗。于是就去...

php缓存技术

<?php for($i=0;$i<=5;$i++){echo $i."<br/>";ob_flush();//这里是刷新php缓冲区flush();//这...

发表评论    

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