Как это работает
- Вы нажимаете на иконку социальной сети на сайте.
- Вас перебрасывает в закрытое приложение соцсети, которое создал разработчик сайта. Оно пропускает информацию выборочно, с множеством нюансов и защит. Фактически это скорее дверь или шлюз, чем полноценное приложение. В него невозможно попасть и максимум, что можно увидеть — «заглушку».
- Видимой частью приложения является «поп-ап» всплывающее окно с надписью «Продолжить как (имя)» или «Разрешить».
- Нажимаете, и социальная сеть посылает сайту ключ доступа. Говорит, что вы согласны дать эти данные.
- Сайт обрабатывает этот запрос и отправляет новый к социальной сети, где уже берёт то, что хочет, подтверждая действие присланным выше ключом.
Что берёт сайт и зачем
Данные, которые берутся из профиля, прописываются в закрытой части сайта, но само значение параметров, потенциально используемых в коде, можно найти на официальных страницах социальных сетей. И эти же параметры можно увидеть в адресной строке в момент открытия окна «Войти через социальную сеть».
По умолчанию в сбор включаются общие данные профиля — public_profile. В коде и адресной строке это прописывается через параметр scope, включающий в себя «публичный профиль». Набор данных, входящий в этот «публичный профиль», у всех соцсетей разный. Например, на Facebook в него входят: айди, обложка, ник, имя, фамилия, возрастной диапазон, ссылка на страницу, пол, местонахождение, фотография, временная зона, последнее обновление страницы и само подтверждение.