首页 > 解决方案 > AWSS3TransferManagerErrorDomain Code = 5 swift 4 中的“'bucket' 名称不能为空”

问题描述

  1. 我正在尝试通过 aws sdk 上传图像,但是当我设置 AWSS3TransferManager 并传递我的上传请求时,我收到了这个错误。我已经尝试了很多,但我什么也没得到。下面是我的上传请求
  2. (<AWSS3TransferManagerUploadRequest: 0x7fa171ff4380> { ACL = 0; body = "file:///Users/godoctor/Library/Developer/CoreSimulator/Devices/9840DEEA-0D60-48FC-A51E-54FEA77717C7/data/Containers/Data/Application/B1055539-C02A-49D3-BC07-68FBDAB9F6EC/Documents/S3BUpload/2B6EA75E-D0A5-4D3D-9059-005E46A58FBD-58887-0001675A8B149223.png"; bucket = "qa.test"; contentType = image; currentUploadingPartNumber = 0; key = "2B6EA75E-D0A5-4D3D-9059-005E46A58FBD-58887-0001675A8B149223.png"; requestPayer = 0; serverSideEncryption = 0; state = 0; storageClass = 0; totalSuccessfullySentPartsDataLength = 0; })
  3. 在此处输入图像描述

标签: iosswiftamazon-web-servicesamazon-s3

解决方案


该错误表明您尚未指定要将数据上传到的 S3 存储桶。您必须将其传递到uploadRequest1您在那里创建的变量中,或者使用存储桶信息实例化 AWSS3TransferManager。AWSS3TransferManager 已被弃用,因此如果您仍在寻找与您的 S3 资源交互的客户端库,我建议您从 AWS Amplify 框架的存储插件https://aws-amplify.github.io/docs/ios/storage


推荐阅读