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

admin6年前IT技术1858

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

 

相关文章

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

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

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

magento1.9x系统加速

1.设置magento数据库模型 为单表查询:   在System > Configuration > Catalog > FrontEnd设置 ‘U...

php – DOMXpath – 获取一个元素的href属性和文本值[转]

原文https://stackoverflow.com/questions/6820429/domxpath-get-href-attribute-and-text-value-of-an-a-ele...

免费教Php,前端开发,asp.net,c#,拯救无业青年

免费教Php,前端开发,asp.net,c#,拯救无业青年

从事互联网开发15年,如果你对计算机编程有兴趣,都可以来找我我能教你的有如下技术:asp.net php c# javascript 前端开发 ...

通俗易懂 一文搞懂IoT Wifi配网 —— ESP32/ESP8266 基于MicroPython Wifi配网详解

通俗易懂 一文搞懂IoT Wifi配网 —— ESP32/ESP8266 基于MicroPython Wifi配网详解

我们购买智能家居产品后,买回来拆箱后第一件事通常就是给这个新的硬件进行配网,所谓配网,也就是让这个新的物联网设备联入我们的局域网内,让这个物联网设备可以进行网络通讯。我们在上一篇文章《MicroPyt...

MYSQL删除数据库记录为空

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

发表评论    

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