Как сохранить сеанс пользователя Cognito - PullRequest
1 голос
/ 09 марта 2019

Я использую javascript sdk для AWS cognito и могу войти в систему с помощью aws cognito и получать в ответ токены.

Я вижу, что сеанс пользователя действителен, пока я не обновлю страницу.Пожалуйста, предложите, как сеанс пользователя может сохраняться после обновления страницы.

Ниже приведен мой код.

function getSession() {
let poolData = {
    UserPoolId: _config.cognito.userPoolId, // Your user pool id here
    ClientId: _config.cognito.clientId, // Your client id here
};

//alert(sessionStorage.getItem("SessionName"));


let userPool = new AmazonCognitoIdentity.CognitoUserPool(poolData);
cognitoUser = userPool.getCurrentUser();
cognitoUser.getSession(function (err, session) {
    if (err) {
        alert(err);
        return;
    }
    console.log('session validity: ' + session.isValid());
    //Set the profile info
    cognitoUser.getUserAttributes(function (err, result) {
        if (err) {
            console.log(err);
            return;
        }
        console.log("------>>" + result);
        //document.getElementById("email_value").innerHTML = result[2].getValue();  
    });

});

}

1 Ответ

0 голосов
/ 12 марта 2019

хорошая новость - SDK сделает это за вас. Проверьте их код для метода getsession

Вы видите, что они хранят токены в локальном хранилище для вас.

Чтобы просмотреть токены из Google Chrome, перейдите в Инструменты разработчика -> Приложение. Вы должны увидеть раздел «Хранение» на левой стороне. Откройте Local Storage, токены сохраняются под URL-адресом приложения.

Вам не нужно обращаться к этим токенам напрямую, SDK будет извлекать и сохранять токены по мере необходимости при вызове различных методов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...