2016-12-30 3 views
0

Я заметил, что сайт показывал мою электронную почту в теге скрипта DOM, и это вызвало мое любопытство. Я считаю, что это Google плюс, но мне любопытно узнать, как сайты получают доступ к электронной почте Gmail, когда вы вошли в системуJavascript google plus api? Email grabbing озабоченность

Знаете ли вы, что это за API и как он работает?

<script> 
window.__SSR = {c: 25.0 ,si:1,e:'[email protected]',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> 

ответ

0

Этот API называется «Вход в Google для веб-сайтов»

Ее очень простой API и Google конспекты большую часть тяжелой lifting.Here как они делают это

1.The веб-разработчик просто добавляет platform.js, который обрабатывает все вещи для входа в Google

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

2. Затем разработчик ставит свою cLIENT_ID (уникальный для разработчиков и веб-сайт) и объема (часть о f информация пользователя. они хотят получить доступ к) .Есть много способов, но большая часть веб-сайта использовать <meta> тегов

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

3. Put вход 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 будет анализировать эти мета-теги, чтобы записать идентификатор клиента и scope.Then создает кнопку входа и связывает обработчик клика, чтобы показать вам всплывающее окно для входа в систему. При щелчке он откроет всплывающее окно с URL-строкой заблокировано это безопасное окно, другие веб-сайты не могут видеть его содержимое. После успешного входа в систему platform.js запрашивает данные на сервер google, по прибытии которого он закрывает всплывающее окно, и вызывает 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 или form), который затем вставлен в динамически созданный скрипт.

Смежные вопросы