我将 AWS S3 存储与 Amplify 结合使用,为了避免多次上传同一文件,我想检查该文件是否已存在。
目前通过 Amplify 获取下载 url,但如果文件不存在,它也会生成一个 url。我希望它返回一个错误:
_ = Amplify.Storage.getURL(key: "myKey") { event in
switch event {
case let .success(url):
print("Completed: \(url)")
case let .failure(storageError):
print("Failed: \(storageError.errorDescription). \(storageError.recoverySuggestion)")
}
Run Code Online (Sandbox Code Playgroud)
}
还有其他方法可以检查文件是否存在于 amplify 中吗?
当然不用下载。重点是节省流量。
小智 1
看来您可以执行类似的操作,Amplify.Storage.list如下所示https://docs.amplify.aws/lib/storage/list/q/platform/ios
_ = Amplify.Storage.list { event in
switch event {
case .success(let listResult):
let keys = listResult.items.map { $0.key }
if !keys.contains("myKey") {
// upload unique file
}
case .failure(let error):
print("Failed: \(error.errorDescription).")
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1781 次 |
| 最近记录: |