Приветствую, коллеги мои разработчики! Я работаю над проектом, в котором клиенту необходимо подключить календарь Google к проекту.Я использую GAPI для соединения календаря Google с моим приложением.Вот что я делаю:
шаг 1:
let config = {
apiKey: [API_KEY],
clientId: [CLIENT_ID],
access_type: 'offline',
discoveryDocs: ['https://www.googleapis.com/discovery/v1/apis/calendar/v3/rest'],
scope: 'https://www.googleapis.com/auth/calendar.events'
}
gapi.load('client:auth2', () => {
gapi.client.init(config).then(() => {
gapi.auth2.getAuthInstance().isSignedIn.listen(true);
});
});
шаг 2:
Promise.resolve(gapi.auth2.getAuthInstance().signIn()).then(response => {
store access_token, id_token, login_hint
}).then(() => {
run_different_axios_requests_to_google_calendar();
});
или если у меня уже есть токены доступа:
run_different_axios_requests_to_google_calendar();
До этого момента он работал отлично!
Проблема возникает, когда истекает токен доступа, и прочитал документацию, и я обнаружил, что если вы запустите gapi.auth2.getAuthInstance(). grantOfflineAccess()
вместо gapi.auth2.getAuthInstance().signIn()
, вы получите refresh_token
с access_token
, id_token
, login_hint
, но я не получаю ответ, фактически мое обещание показывает, что This app isn't verified
, и мне нужно обновить токен, когда истекает access_token, чтобы я мог получить новый токен, безнеобходимость попросить пользователя снова войти (через обещание).Я не уверен, что я делаю здесь неправильно!любая помощь приветствуется!