如何从 amazon cognito javascript 注销并清除缓存的 identityId

How to logout from amazon cognito javascript and clear cached identityId

到目前为止,我已经成功登录到 Cognito 并同步了数据,但一直卡在退出用户的状态。我能够从身份提供者注销,但在再次登录到 cognito 时,我收到无效登录错误。当我重新加载应用程序时,它仍然有效。

从身份提供商注销后,尝试在 CognitoIdentityCredentials 提供商上调用 clearCachedId()。它应该看起来像:

AWS.config.credentials.clearCachedId();

已为此创建了 issue。当前的解决方法是清除 Cognito Credentials 对象中的缓存 ID,然后重新初始化它:

cognitoCredentials.clearCachedId();
cognitoCredentials = new AWS.CognitoIdentityCredentials(cognitoParams);
AWS.config.credentials = cognitoCredentials;

其中 cognitoParams 是用于初始化凭据的对象,例如:

cognitoParams = {
  IdentityPoolId: 'us-east-1:ebee2fff-acde-4382-a090-5990604a007d'
};