Javascript 尝试使用存储时出现无凭据错误。put()
当我尝试将文件放入存储器时,出现Javascript 尝试使用存储时出现无凭据错误。put(),javascript,amazon-web-services,amplify,Javascript,Amazon Web Services,Amplify,当我尝试将文件放入存储器时,出现无凭据错误。我遵循以下指南: 我用这段代码来测试 这是我对放大和存储的手动配置: import Storage from '@aws-amplify/storage'; export function configureAmplify() { Amplify.configure({ Auth: { identityPoolId: process.env.REACT_APP_identityPoolId,
无凭据错误
。我遵循以下指南:
我用这段代码来测试
这是我对放大和存储的手动配置:
import Storage from '@aws-amplify/storage';
export function configureAmplify() {
Amplify.configure({
Auth: {
identityPoolId: process.env.REACT_APP_identityPoolId,
region: process.env.REACT_APP_region,
userPoolId: process.env.REACT_APP_userPoolId,
userPoolWebClientId: process.env.REACT_APP_userPoolWebClientId
},
Storage: {
bucket: process.env.REACT_APP_bucket_name,
region: process.env.REACT_APP_region,
identityPoolId: process.env.REACT_APP_identityPoolId
}
});
}
export function SetS3Config(bucket, level) {
Storage.configure({
bucket: bucket,
level: level,
region: 'eu-west-1',
identityPoolId: process.env.REACT_APP_identityPoolId
});
}
所以,
我把解决这个问题的步骤放在这里
步骤1:
如果您试图在未登录web应用程序的情况下上载文件,则放大和存储的手动配置应如下所示:
import Storage from '@aws-amplify/storage';
export function configureAmplify() {
Amplify.configure({
Auth: {
identityPoolId: process.env.REACT_APP_identityPoolId,
region: process.env.REACT_APP_region,
userPoolId: process.env.REACT_APP_userPoolId,
mandatorySignIn: false,
userPoolWebClientId: process.env.REACT_APP_userPoolWebClientId
},
Storage: {
bucket: process.env.REACT_APP_bucket_name,
region: process.env.REACT_APP_region,
identityPoolId: process.env.REACT_APP_identityPoolId
}
});
}
这一行:
mandatorySignIn: false
这可以防止强制用户身份验证进入您的应用程序,您的Cognito身份将通过该身份识别您并为您提供对AWS资源的访问
如果仍然收到错误,请尝试以下操作:
步骤2:
我希望这能起作用。您是否设置了Cognito用户池和Cognito标识池?是的,并将Cognito用户池添加到标识池中的身份验证提供程序中?您是否登录web应用程序,然后调用put函数,还是未登录?未登录?这是一个生成错误?
mandatorySignIn: false