Javascript google 加上 api?电子邮件抓取问题

Javascript google plus api? Email grabbing concern

我注意到一个网站在 DOM 的脚本标签中显示了我的电子邮件,这激起了我的好奇心。我相信它是 google 加号,但我很想知道网站如何访问 您登录时的 gmail 电子邮件

你知道这个 API 是什么以及它是如何工作的吗?

<script>
window.__SSR = {c: 25.0 ,si:1,e:'myName@DOMAIN.com',dn:'myFIRSTname 
lastNAME',a:'bubble',at:'AEIZW7RgsJq10Op\/wP0ZzQ+m5j2k5IHLQYFn30BdkVKqfe6uNFdTaBsxUcAFbcSjHw39naaaaaaa3aDaysPCWuNIg6kFflTylDqdUS+zz+GE\x3d',ld:[null,[1,25,[]
,1,90]
]
,r:'https:\/\/www.websiteIvisited.com\/',s:'widget',annd: 2.0 ,bp: {}, 
id:'https:\/\/www.websiteIvisited.com\/'}; 
document.addEventListener && document.addEventListener('DOMContentLoaded', function () 
{gapi.inline.tick('wdc', new Date().getTime());}, false);
</script>

这个API叫做"Google Sign-In for websites"

它非常简单 API 和 google 抽象了大部分内容 lifting.Here 他们是如何做到的

1.The 网络开发人员只需添加 platform.js 即可处理所有 google 登录内容

<script src="https://apis.google.com/js/platform.js"></script>

2。然后开发人员将他的CLIENT_ID(开发人员和网站独有)和范围(用户信息的一部分。他们想要访问)。有很多方法,但大多数网站使用<meta>标签

<meta name="google-signin-scope" content="profile email">
<meta name="google-signin-client_id" content="CLIENT_ID.apps.googleusercontent.com">

3。 Put login button.Again 许多选项,但对于那些懒惰的开发人员 google 提供了一个标记语法,platform.js 将解析并转换为一个漂亮的按钮 google logo.Note data-onsuccess="onSignIn"部分

 <div class="g-signin2" data-onsuccess="onSignIn" data-theme="dark"></div>

4.Now 当您访问该页面时 platform.js 将解析这些元标记以记录客户端 ID,并且 scope.Then 它会创建登录按钮并绑定一个点击处理程序以向您显示一个弹出窗口 window 用于登录。单击后会打开一个弹出窗口 window,URL 栏已锁定,这是一个安全的 window 其他网站无法看到它 content.After 您已成功登录 platform.js 向 google 服务器请求数据,它在到达时关闭弹出窗口并使用包含所有 data.Rest 参数的参数调用 onSignIn 它只是函数调用

<script>
  function onSignIn(googleUser) {
    var profile = googleUser.getBasicProfile();
    alert('Full Name: ' + profile.getName());
    alert('Given Name: ' + profile.getGivenName());
    alert('Family Name: ' + profile.getFamilyName());
    alert("Email: " + profile.getEmail());
  };
</script>

这个信息。发送您的网站(通过 ajax 或表单),然后将其插入动态创建的脚本中。