如何防止 AmplifyJS 始终不从 Public 文件夹中获取对象?
How to prevent AmplifyJS from not fetching objects from Public folder always?
我正在使用 AmplifyJS 从我的 S3 存储桶中获取对象。但我注意到的是,Amplify JS 从 public 文件夹或其他用户的文件夹中获取对象。但是我的 S3 存储桶的根位置有一个文件。我如何从 Amplify JS 获取该文件?
例如,如果您引用 https://aws-amplify.github.io/docs/js/storage#get post,您会看到它总是在我的存储桶名称后附加 /public 文件夹。这是我要避免的。
Amplify 强制我在我的 S3 存储桶中拥有文件夹。它将是 PUBLIC、PROTECTED 或 USER 的 CUSTOM 文件夹。
我的问题得到了答案。您可以在使用 Amplify JS 时设置 customPrefix 前缀 属性。这是一个例子。
const customPrefix = {
public: ''
};
Storage.get("TestJson.json", { download: true, customPrefix: customPrefix })
.then(result => console.log(JSON.parse(result.Body.toString())))
.catch(err => console.log(err));
我正在使用 AmplifyJS 从我的 S3 存储桶中获取对象。但我注意到的是,Amplify JS 从 public 文件夹或其他用户的文件夹中获取对象。但是我的 S3 存储桶的根位置有一个文件。我如何从 Amplify JS 获取该文件?
例如,如果您引用 https://aws-amplify.github.io/docs/js/storage#get post,您会看到它总是在我的存储桶名称后附加 /public 文件夹。这是我要避免的。
Amplify 强制我在我的 S3 存储桶中拥有文件夹。它将是 PUBLIC、PROTECTED 或 USER 的 CUSTOM 文件夹。
我的问题得到了答案。您可以在使用 Amplify JS 时设置 customPrefix 前缀 属性。这是一个例子。
const customPrefix = { public: '' };
Storage.get("TestJson.json", { download: true, customPrefix: customPrefix })
.then(result => console.log(JSON.parse(result.Body.toString())))
.catch(err => console.log(err));