【发布时间】:2018-11-15 15:37:48
【问题描述】:
我找不到使用此库设置元数据的方法:Amazon S3 Transfer Utility for iOS
有没有办法做到这一点?
【问题讨论】:
标签: ios amazon-web-services amazon-s3 aws-sdk
我找不到使用此库设置元数据的方法:Amazon S3 Transfer Utility for iOS
有没有办法做到这一点?
【问题讨论】:
标签: ios amazon-web-services amazon-s3 aws-sdk
您可以将用户定义的元数据分配给对象。用户定义的元数据必须以前缀“x-amz-meta-”开头,否则 Amazon S3 不会按照您的定义设置键值对。您可以通过将您选择的名称添加到 x-amz-meta-key 来定义自定义元数据。这将创建一个自定义键。例如,如果您添加自定义名称 alt-name,则元数据键将为 x-amz-meta-alt-name。
var uploadCompletion: AWSS3TransferUtilityUploadCompletionHandlerBlock?
uploadCompletion = { (uploadTask, error) in
if error == nil {
completion(nil)
} else {
completion(error)
}
}
let expression = AWSS3TransferUtilityUploadExpression()
//YOUR METADATA HERE
expression.setValue("value", forRequestParameter: "x-amz-meta-yourkeyhere")
let transferUtility = AWSS3TransferUtility.default()
transferUtility.uploadData(data,
bucket: s3BucketName,
key: key,
contentType: "image/png",
expression: expression,
completionHandler: uploadCompletion)
【讨论】:
您可以在AWSS3TransferUtilityExpression 上使用- setValue:forRequestParameter: 添加元数据。
注意 Amazon S3 以小写形式存储用户定义的元数据。每个名称、值对必须符合 US-ASCII。
【讨论】: