【发布时间】:2021-10-09 06:01:59
【问题描述】:
更新用户属性时出现错误:用户未通过身份验证错误。如果这不是更新的方式,请分享更新的方式。我提到了https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UpdateUserAttributes.html,但是没看懂。
更新代码
function update(username, password) {
try {
var attributeList = [];
attributeList.push(new AmazonCognitoIdentity.CognitoUserAttribute({
Name: "custom:role",
Value: "some new value"
}));
var authenticationDetails = new AmazonCognitoIdentity.AuthenticationDetails({
Username: username,
Password: password,
});
var userPool = new AmazonCognitoIdentity.CognitoUserPool(poolData);
var userData = {
Username: username,
Pool: userPool
};
var cognitoUser = new AmazonCognitoIdentity.CognitoUser(userData);
cognitoUser.updateAttributes(attributeList, (err, result) => {
if (err) {
console.log("\n\n\n\nUpdate Error: ", err, "\n\n\n");
} else {
console.log(result);
}
});
} catch (e) {
console.log("\n\n\n\nCommon Error", e, "\n\n\n");
}
}
这里出错
Update Error: Error: User is not authenticated
at CognitoUser.updateAttributes (C:\Users\Kiran\Documents\Projects\Rentals-Backend\node_modules\amazon-cognito-identity-js\lib\CognitoUser.js:1040:23)
at update (C:\Users\Kiran\Documents\Projects\Rentals-Backend\models\user.js:94:21)
at C:\Users\Kiran\Documents\Projects\Rentals-Backend\models\user.js:33:9
at new Promise (<anonymous>)
at Object.exports.signIn (C:\Users\Kiran\Documents\Projects\Rentals-Backend\models\user.js:32:12)
at exports.signIn (C:\Users\Kiran\Documents\Projects\Rentals-Backend\controllers\user.js:12:11)
at Layer.handle [as handle_request] (C:\Users\Kiran\Documents\Projects\Rentals-Backend\node_modules\express\lib\router\layer.js:95:5)
at next (C:\Users\Kiran\Documents\Projects\Rentals-Backend\node_modules\express\lib\router\route.js:137:13)
at Route.dispatch (C:\Users\Kiran\Documents\Projects\Rentals-Backend\node_modules\express\lib\router\route.js:112:3)
at Layer.handle [as handle_request] (C:\Users\Kiran\Documents\Projects\Rentals-Backend\node_modules\express\lib\router\layer.js:95:5)
at C:\Users\Kiran\Documents\Projects\Rentals-Backend\node_modules\express\lib\router\index.js:281:22
at Function.process_params (C:\Users\Kiran\Documents\Projects\Rentals-Backend\node_modules\express\lib\router\index.js:335:12)
at next (C:\Users\Kiran\Documents\Projects\Rentals-Backend\node_modules\express\lib\router\index.js:275:10)
at urlencodedParser (C:\Users\Kiran\Documents\Projects\Rentals-Backend\node_modules\body-parser\lib\types\urlencoded.js:82:7)
at Layer.handle [as handle_request] (C:\Users\Kiran\Documents\Projects\Rentals-Backend\node_modules\express\lib\router\layer.js:95:5)
at trim_prefix (C:\Users\Kiran\Documents\Projects\Rentals-Backend\node_modules\express\lib\router\index.js:317:13)
at C:\Users\Kiran\Documents\Projects\Rentals-Backend\node_modules\express\lib\router\index.js:284:7
at Function.process_params (C:\Users\Kiran\Documents\Projects\Rentals-Backend\node_modules\express\lib\router\index.js:335:12)
at next (C:\Users\Kiran\Documents\Projects\Rentals-Backend\node_modules\express\lib\router\index.js:275:10)
at C:\Users\Kiran\Documents\Projects\Rentals-Backend\node_modules\body-parser\lib\read.js:130:5
at invokeCallback (C:\Users\Kiran\Documents\Projects\Rentals-Backend\node_modules\raw-body\index.js:224:16)
at done (C:\Users\Kiran\Documents\Projects\Rentals-Backend\node_modules\raw-body\index.js:213:7)
at IncomingMessage.onEnd (C:\Users\Kiran\Documents\Projects\Rentals-Backend\node_modules\raw-body\index.js:273:7)
at IncomingMessage.emit (events.js:375:28)
at IncomingMessage.emit (domain.js:470:12)
at endReadableNT (internal/streams/readable.js:1317:12)
at processTicksAndRejections (internal/process/task_queues.js:82:21)
【问题讨论】:
-
应用程序是否经过身份验证以更改 Cognito?
-
你在使用 Javascript 吗?
标签: amazon-web-services amazon-cognito