当我尝试authenticateUser
时,我得到了Error: Unable to verify secret hash for client <CLIENT_ID_HERE>
怎么了?我的代码如下:
import {
Config,
CognitoIdentityCredentials
} from "aws-sdk"
import {
CognitoUserPool,
CognitoUserAttribute,
AuthenticationDetails,
CognitoUser
} from "amazon-cognito-identity-js"
Config.region = "ap-northeast-2"
var userpool = new CognitoUserPool({
UserPoolId: "ap-northeast-2_QosOiWMkd",
ClientId: "1bd6s9mv98bo2lucen2vesbqls"
})
var userData = {
Username: "jiewmeng@gmail.com",
Pool: userpool
}
var authData = new AuthenticationDetails({
Username: "jiewmeng@gmail.com",
Password: "P@$$w0rd"
})
var cognitoUser = new CognitoUser(userData)
cognitoUser.authenticateUser(authData, {
onSuccess: function (result) {
console.log("authenticated with", result)
},
onFailure: function (err) {
console.error(err)
}
})
在AWS上,客户端 secret 已被禁用
最佳答案
适用于JavaScript的Amazon Cognito身份SDK不支持带有客户端密码的应用程序。这在SDK documentation中声明:
看来您将不得不重新配置您的应用程序。