Postman is an API platform for building and using APIs. Postman simplifies each step of the API lifecycle and streamlines collaboration so you can create better APIs—faster. https://www.postman.com/
1. Для подключения сайта, получите токен вашего сайта - получить токен
2. Далее, перекидывайте пользователей на ссылки типа:
https://api.clicklogin.ru/api/auth/[AUTH_TYPE]?domain=[DOMAIN]&redirect=[REDIRECT_URL]&token=[CLICK_LOGIN_TOKEN]
Пример:
https://api.clicklogin.ru/api/auth/vk?domain=clicklogin.ru&redirect=https://clicklogin.ru/playground&token=40f9931e4a5fb8...
Параметр | Значение |
---|---|
[AUTH_TYPE] | Соц. сеть авторизации: vk, fb, ok, gp, mailru, yandex, linkedin |
[DOMAIN] | Ваш домен по которому получали токен |
[REDIRECT_URL] | Ссылка где находится обработчик авторизации |
[CLICK_LOGIN_TOKEN] | Публичный токен выданный нашим сервисом |
3. После того как пользователь авторизуется через социальную сеть, он перейдёт по ссылке переданную в параметре [REDIRECT_URL]?token_auth=... , где вы должны проверить корректность авторизации. А именно полученный токен на вашей стороне из параметра token_auth.
https://api.clicklogin.ru/api/usereq?token=[TOKEN_AUTH]
4. Получите из запроса usereq данные пользователя, зарегистрируйте его в системе, и авторизуйте.
Страница login.html имеет код:
<div class="widgetlogin">
<p>Авторизация через Вконтакте</p>
<!-- В ссылке важны параметры : token & domain & redirect -->
<a href="https://api.clicklogin.ru/api/auth/fb?domain=clicklogin.ru&redirect=https://clicklogin.ru/ru/playground/&token=40f9931e4a5fb888f4ce06f7a132f91b141b6ef926cc11cc1fe2d6ffe3e648afedb3afe7fdb6e00b6571a3d75f753eba348889b289b6bdcf6505225add">
Нажмите чтобы войти!
</a>
</div>
2) Пример обработки после того как пользователя перекинуло на страницу "редиректа" (php обработчика) к примеру : https://example.ru/callback.php
// PHP
function check_auth() {
$params = array(
/* Вводим свой {domain} на который выдавали токен - http://clicklogin.ru/addsite */
'domain' => 'clicklogin.ru',
/* Получаем {token_auth} */
'token_auth' => $_REQUEST['token_auth']
);
/* Получаем информацию об авторизации */
$query = "https://api.clicklogin.ru/api/usereq?" . http_build_query($params, null, '&');
$json = @file_get_contents($query);
if(!empty($json)) {
$response = (array) json_decode($json,true);
/* если юзер существует */
if(isset($response['error']) && $response['error'] === false) {
echo($response['user']['id']); /* (numeric) Идентификатор clicklogin */
echo($response['user']['user_id']); /* (numeric) Идентификатор соц. сети */
echo($response['user']['email']); /* (string) Почта, обычно бывает всегда*/
echo($response['user']['first_name']); /* (string) Имя, обычно бывает всегда*/
echo($response['user']['last_name']); /* (string) Фамилия, обычно бывает всегда*/
echo($response['user']); /* полностью */
return (array) $response['user'];
}
}
return array();
}
$user = check_auth();
if(!empty($user)) {
var_dump($user);
}
else {
echo 'Авторизация не удалась!';
}
// всё :)