如何访问本地存储以从cognito获取令牌?

时间:2019-05-05 16:36:31

标签: amazon-cognito ssr nuxt

我正在使用Nuxtjs和AWSCognito来认证用户。我将令牌保存在本地存储中,但是,由于是SSR应用程序,刷新页面时丢失了令牌。刷新页面后如何保持用户身份验证?我应该使用Cookies吗?有人可以提供示例或解释吗?

 async LOGIN({
    commit
  }, {
    username,
    password
  }) {
    try {
      let email = await this.cognito.login(username, password);
      debugger;
      Cookie.set("api_token", email.idToken.jwtToken);
      localStorage.setItem("api_token", email.idToken.jwtToken);
      localStorage.setItem("user_token", email.accessToken.jwtToken);
      commit("SET_USER", email);
    } catch (error) {
      throw (new Error(error), {
        message: error.message
      });
    }
  },

2 个答案:

答案 0 :(得分:0)

使用AWS Javascript SDK。在对用户进行身份验证时,SDK会为您将令牌放置在本地存储中,并还会处理刷新令牌。基本上,您不应该自己编写任何代码来处理令牌。只需使用SDK界面即可。

答案 1 :(得分:0)

检出AWS Amplify Auth,它使身份验证变得如此简单。请参阅此处AWS Amplify Auth