Je travaille avec l'AWS SDK JS Cognito Identity (https://github.com/aws/amazon-cognito-identity-js) et je suis en train de mettre en place quelques boutons pour tester la setDeviceStatusRemembered
, setDeviceStatusNotRemembered
et forgetDevice
fonctionnalité mais je continue à obtenir une erreur en disant:AWS Cognito Identité JS: Oublier/Souvenir/Ne sont pas souvenus appareil
MissingRequiredParameter: Missing required key 'DeviceKey' in params
Voici une implémentation de l'une des fonctions:
forgetDevice = function(){
var cognitoUser = userPool.getCurrentUser();
if (cognitoUser != null) {
cognitoUser.getSession(function(err, session) {
if (err) {
alert(err);
signOut();
return;
}
console.log('session validity: ' + session.isValid());
cognitoUser.forgetDevice({
onSuccess: function (result) {
console.log('call result: ' + result);
},
onFailure: function(err) {
alert(err);
}
});
});
}
}
Si je change la fonction comme t son:
forgetDevice = function(cognitoUser){
cognitoUser.forgetDevice({
onSuccess: function (result) {
console.log('call result: ' + result);
},
onFailure: function(err) {
alert(err);
}
});
}
et j'appelle la fonction de la cognitoUser.authenticateUser
success
fonction de rappel, en passant cognitoUser
comme argument dans la fonction forgetDevice
ci-dessus tout fonctionne parfaitement.
En regardant l'objet session
dans la première mise en œuvre, il apparaît que l'objet session
ne contient pas la propriété DeviceKey
de sorte que le cognitoUser.forgetDevice()
appel échoue.
Ce que je suis en train de comprendre est, dois-je être simplement appeler la setDeviceStatusRemembered
, setDeviceStatusNotRemembered
et forgetDevice
fonctions à la connexion, ou devrais-je être en mesure de les appeler tout moment dans ma demande? J'espère que cela a du sens. Toute aide serait grandement appréciée. Merci!
Vous êtes génial! appelant getCachedDeviceKeyAndPassword a fonctionné! Merci beaucoup! –