Storage.list() 返回一个空数组



我正在尝试制作一个网页来查看 S3 中 Cognito 帐户私有文件夹中的所有文件。我正在使用 Amplify 身份验证和存储插件,我知道它们都配置正确,因为我已经有文件上传工作了。我在 Github 问题上找到了这个线程,但该线程中提到的内容都没有帮助我。通过调试日志,我可以看到它正在正确解析路径,因为我得到了显示的正确路径,但只返回了一个空数组。我什至尝试解析公用文件夹,其中包含一个测试文件,以确保它不是访问问题,但这具有完全相同的问题。

这是它查找的正确路径,xxxx 替换了帐户 ID。[DEBUG] 58:16.450 AWSS3Provider - list * from downloads/us-east-1:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/*

const downloadPrefix = {
private: 'downloads/',
};
Auth.currentCredentials();
Storage.list('*', {
level: 'private',
customPrefix: downloadPrefix
})
.then(result => {
this.message = result.length
})
.catch(err => {
this.message = err
}
);

提前感谢您提供的任何帮助!我整天都困在这个上面。

我想通了。删除搜索词中的*使其实际上返回结果,这根本不是我所期望的,并且应该尝试开始。 如果你和我做同样的事情,Storage.list('', ....)应该解决你的问题。