微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 Amplify 在 S3 上上传文件时出现 AuthorizationHeaderMalformed 错误

如何解决使用 Amplify 在 S3 上上传文件时出现 AuthorizationHeaderMalformed 错误

我有这部分代码使用 Amplify 将文件发送到 S3

     const file = e.target.files[0];
            try {
                console.log(Storage.vault)
                await Storage.put(file.name,file);
            } catch (error) {
                console.log('Error uploading file: ',error);
            }

但总是返回这个错误

<Error>
<Code>AuthorizationHeaderMalformed</Code>
<Message>The authorization header is malformed; the authorization header requires three components: Credential,SignedHeaders,and Signature.</Message>
<RequestId>YP2HEHPE20T13HNJ</RequestId>
<HostId>T5mH0m+CHZ6n/JuShi7FdubYZt3BEz4QiEHMmckL0v5VrB7DqupGbmadxDgZnitWFI0IUYVmBig=</HostId></Error>

我使用 Cognito 登录我的系统,并使用此代码设置 Amplify 的配置

   Auth: {
        identityPoolId: process.env.REACT_APP_IDENTITY_POOL_ID,region: process.env.REACT_APP_REGION,userPoolId: process.env.REACT_APP_USER_POOL_ID,userPoolWebClientId: process.env.REACT_APP_CLIENT_ID,},Storage: {
        AWSS3: {
            region: process.env.REACT_APP_REGION,bucket: process.env.REACT_APP_BUCKET,}
    } 

如果我使用 AWS SDK 在 Amplify 上获取连接信息,我可以在 S3 上上传,但只有 Amplify 不能。

为了配置我的存储桶和身份池,我使用了放大文档。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。