如何浏览 boto3 空间上的文件? NoSuchKey 错误

问题描述

我使用 Digitalocean 创建了一个 s3 空间。我在 django 项目中使用 ckeditor 将文件上传到这个文件中。 我上传文件没有问题,但是当我尝试浏览我的服务器时遇到问题(查看图像是否已经存在)

这是我的代码

session = boto3.session.Session()
client = session.client('s3',region_name='fra1',endpoint_url=settings.AWS_S3_ENDPOINT_URL,aws_access_key_id=settings.AWS_ACCESS_KEY_ID,aws_secret_access_key=settings.AWS_SECRET_ACCESS_KEY
                        )

resp = client.list_objects(Bucket=settings.AWS_STORAGE_BUCKET_NAME)

调用函数 list_objects 的那一行发生了错误

An error occurred (NoSuchKey) when calling the ListObjects operation: UnkNown

这真的很奇怪,因为我确定我的 settings.AWS_STORAGE_BUCKET_NAME 是正确的。 此外,我确定 session.client 中没有错误,因为我使用相同的文件上传文件效果很好。

为了确保我的存储桶是正确的,我访问了我的 AWS_S3_ENDPOINT_URL 并获得了一个 XML

<ListBucketResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Name>[MY BUCKET NAME]</Name>
<Prefix/>
<MaxKeys>1000</MaxKeys>
<IsTruncated>false</IsTruncated>

然后开始一个 <Contents> 列表

感谢您的帮助

解决方法

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

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

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

相关问答

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