该错误可能是由于AWS SDK找不到AWS配置文件而导致的。在AWS SDK for JavaScript中,AWS配置文件可以通过以下方式设置:
在Linux和macOS上,可以在用户的$HOME目录下创建一个名为.aws的目录,并在其中创建一个名为“config”的文件。
在Windows上,可以通过在%UserProfile%\ .aws(例如:C:\Users\USER_NAME.aws)目录中创建一个名为“config”的文件来设置AWS配置文件。
配置文件应包含类似于以下内容的内容:
[default] aws_access_key_id=ACCESS_KEY_ID aws_secret_access_key=SECRET_ACCESS_KEY region=REGION
要解决此错误,请确保您的AWS配置文件已正确设置,并且amazon-cognito-identity-js包已正确安装。
以下是示例代码:
const AWS = require('aws-sdk'); const AmazonCognitoIdentity = require('amazon-cognito-identity-js');
AWS.config.region = 'REGION';
const poolData = { UserPoolId: 'USER_POOL_ID', ClientId: 'CLIENT_ID' }; const userPool = new AmazonCognitoIdentity.CognitoUserPool(poolData);
const userData = { Username: 'USERNAME', Pool: userPool, };
const cognitoUser = new AmazonCognitoIdentity.CognitoUser(userData);
cognitoUser.authenticateUser(authenticationDetails, { onSuccess: function (result) { const accessToken = result.getAccessToken().getJwtToken(); const idToken = result.getIdToken().getJwtToken(); }, onFailure: function (err) { console.log(err); }, });
请确保将以下变量替换为您的实际值: