Я использую Auth0 Lock с подключением google-oauth2
, и мне нужно получить refresh_token
, потому что мне нужно делать вызовы API с серверной стороны, когда пользователь находится в автономном режиме.Auth0 Lock - Google oauth2 не смог получить refresh_token
Я следую их руководству, но он не работает, refreshToken
всегда undefined
.
Использование http://cdn.auth0.com/js/lock/10.7.2/lock.min.js
this.lock = new Auth0Lock('...', 'xxx.eu.auth0.com', {
initialScreen:'login',
allowedConnections: ['google-oauth2'],
allowSignUp: false,
auth: {
redirect: false,
responseType: "token",
params: {
'access_type': 'offline',
'approval_prompt': 'force',
},
},
autoclose: true
});
Пробовал также с params
'approval_prompt': 'force'
или 'prompt': 'select_account consent'
инструкции здесь: https://github.com/auth0/rules/blob/master/rules/google-refresh-token.md
Я не уверен, что правильно понимаю. У меня есть приложение SPA, которое я хочу подключить к серверу в узле. В SPA я использую Lock, и вы говорите мне, что мне нужно использовать Management API (на сервере, я полагаю), но я не совсем понимаю, как я смогу получить 'refresh_token'. Является ли Auth0 сохранением refresh_token где-то для меня, который будет восстановлен после? – mtt
refresh_token (Google один, то есть) извлекается после аутентификации и сохраняется как часть профиля пользователя в Auth0. Чтобы получить его, вы используете конечную точку, о которой я писал выше. Вы можете легко это увидеть самостоятельно, войдя в систему, а затем с помощью API-обозревателя. Идентификаторы IdP (Google) (как access_token, так и refresh_token) будут находиться в структуре данных Identities. –
Теперь все ясно, спасибо, Eugenio! И спасибо за отличный продукт, который является Auth0! – mtt