Настройки входа по кнопке
Обновлено 14 ноября 2024
Код на странице, где необходимо отобразить кнопку
Для доступности SberidSDK подключите скрипт https://id.sber.ru/sdk/web/sberid-sdk.production.js на страницу
new SberidSDK({
oidc: {
client_id: '9868c1be-0779-4bb3-93e1-f227aa387a43',
client_type: 'PRIVATE',
nonce: 'McTTOAYUkH3ye-X9hhD67N3Kc6lIiSz3unUq54M1s0s',
redirect_uri: 'https://www.sberbank.ru/ru/person',
state: 'af0ifjsldkj',
scope: 'openid name',
response_type: 'code',
name: 'Название вашего приложения'
},
notification: {
// отключаем отображение баннера, не рекомендуется использовать на одной странице сразу и кнопку и баннер
enable: false,
}
container: '.sberIdButton' // селектор контейнера куда будет встраиваться кнопка
// данная функцию будет вызвана если получится сделать авторизацию без перехода на страницу Сбер ID
onSuccessCallback: ({state, code} = {}) => {
if(state && code){
// проверка и отправка данных state, code для завершения авторизации
} else {
// обработка ошибки
}
}
})
.init()
.then(() => {
// завершена инициализация sdk, ваш код если необходимо
});
Код на странице, после успешной аутентификации по Сбер ID
const searchParams = new URL(window.location.href).searchParams;
const state = searchParams.get('state');
const code = searchParams.get('code');
const error = searchParams.get('error');
if(error || !(state && code)) {
// обработка ошибки входа
} else {
// проверка и отправка данных state, code для завершения авторизации
}