我與AWS Cognito身份JS SDK(https://github.com/aws/amazon-cognito-identity-js)工作,我想建立幾個按鈕來測試setDeviceStatusRemembered
,setDeviceStatusNotRemembered
和forgetDevice
功能,但我不斷收到一個錯誤說:AWS Cognito身份JS:忘記/記住/不要記住設備
MissingRequiredParameter: Missing required key 'DeviceKey' in params
這裏的功能之一的實現:
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);
}
});
});
}
}
如果我改變了樣T功能他:
forgetDevice = function(cognitoUser){
cognitoUser.forgetDevice({
onSuccess: function (result) {
console.log('call result: ' + result);
},
onFailure: function(err) {
alert(err);
}
});
}
,我打電話從cognitoUser.authenticateUser
success
回調函數的函數,傳遞cognitoUser
作爲參數到forgetDevice
功能高於一切完美的作品。
從第一個實現看session
對象似乎讓cognitoUser.forgetDevice()
呼叫失敗session
對象不包含DeviceKey
財產。
我想弄明白的是,我應該只是在登錄時調用setDeviceStatusRemembered
,setDeviceStatusNotRemembered
和forgetDevice
函數,還是應該可以在我的應用程序中隨時調用它們?希望這是有道理的。任何幫助將不勝感激。謝謝!
你太棒了!調用getCachedDeviceKeyAndPassword工作!非常感謝! –