无法再使用 React Native 将图像上传到 Amazon S3 存储桶

问题描述

我发现使用 React Native 将图像上传到 Amazon S3 时有一个奇怪的问题。我能够创建正确的 IAM、身份池、用户池和 Amazon S3 存储桶,并且图像上传工作了几个月。突然之间,它在上周内停止工作。我仍然可以下载存储桶中的现有图像,但无法获取任何新图像。我得到的错误看起来像:

[ERROR] 49:32.334 axios-http-handler Error: Request Failed with status code 400
[WARN] 49:32.345 AWSS3Provider - error uploading Error: Request Failed with status code 400

我遵循了此处的文档 - https://docs.amplify.aws/lib/storage/upload/q/platform/js#react-native-uploads

我在具有类似配置的网络应用程序上运行良好。我注意到的一件事是,当我向存储添加进度回调时,如下所示:

  await Storage.put(fileName,blob,{
        contentType: 'image/jpeg',progressCallback(progress) {
          console.log('Progress is: ' progress);
          console.log(`Uploaded: ${progress.loaded}/${progress.total}`);
        },});

对象控制台在 Progress is: 后注销,在移动应用上显示属性 isTrusted: false,在网络应用上显示 isTrusted: true

有人对此有什么想法吗?

更新: 我能够通过使用这个插件让它工作 https://github.com/theyeshu/react-native-s3-upload

但是,它要求我将 accessKey 和 secretKey 包含到我的亚马逊用户中,所以我并不那么激动。我希望有一种方法可以代替登录用户传递凭据

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...