Bisher habe ich es geschafft, mich bei cognito anzumelden und Daten zu synchronisieren, bin aber bei der Abmeldung von Benutzern festgefahren. Ich bin in der Lage, mich von Identity-Providern abzumelden, aber bei der erneuten Anmeldung bei cognito erhalte ich einen Fehler wegen ungültiger Logins. Wenn ich die App neu lade, funktioniert es.So loggen Sie sich aus amazon cognito javascript und löschen cached identityId
8
A
Antwort
7
Ein issue hat dafür geschaffen. Die aktuelle Problemumgehung ist die Cache-ID in Ihrem Cognito Credentials zu löschen Objekt, und es dann erneut zu initialisieren:
cognitoCredentials.clearCachedId();
cognitoCredentials = new AWS.CognitoIdentityCredentials(cognitoParams);
AWS.config.credentials = cognitoCredentials;
Wo cognitoParams das Objekt verwendet, um die Anmeldeinformationen zu initialisieren, zB .:
cognitoParams = {
IdentityPoolId: 'us-east-1:ebee2fff-acde-4382-a090-5990604a007d'
};
1
Nach der Identitätsprovider abzumelden, versuchen clearCachedId() auf den CognitoIdentityCredentials Anbieter anrufen. Es sollte etwas wie folgt aussehen:
AWS.config.credentials.clearCachedId();
Das scheint leider auch nicht zu funktionieren. Ich habe mehrere Logins, z. B. Facebook und Google. Die Probleme treten auf, wenn ich versuche, mich von beiden abzumelden und zum anderen zu wechseln. Ich erhalte den folgenden Fehler {__ type: "NotAuthorizedException" Nachricht: "Logins stimmen nicht überein. Bitte. Fügen Sie mindestens einen gültigen Login für diesen Identitäts- oder Identitätspool hinzu."} –
@kabangijulius: Könnten Sie diese Ausnahme beheben? Gegenübergestellt – BaSha
@BaSha Ich schaffte es nicht zu erreichen, was ich wollte, aber ich erkannte, wenn ich die App nach dem Abmelden neu laden, funktioniert es. Also habe ich nach jedem Logout neu geladen. –