在 AWS SDK v2 中,可以使用 Aws::S3::PresignedPost
类来替代 Aws::S3::Presigner#presigned_request
方法。
下面是一个代码示例,展示了如何在 AWS SDK v2 中使用 Aws::S3::PresignedPost
来生成预签名的 S3 POST 请求:
require 'aws-sdk-s3'
# 创建 S3 客户端
s3 = Aws::S3::Client.new(region: 'us-west-2')
# 设置 S3 存储桶名称和对象键
bucket_name = 'your-bucket-name'
object_key = 'your-object-key'
# 设置过期时间(可选,单位:秒)
expiration = 3600
# 创建 PresignedPost 对象
presigned_post = Aws::S3::PresignedPost.new(s3, bucket_name, object_key, expires_in: expiration)
# 输出预签名的 POST 请求表单数据
puts presigned_post.fields
请将上述代码中的 'your-bucket-name'
替换为您的实际存储桶名称,'your-object-key'
替换为您的实际对象键。
执行上述代码后,将输出预签名的 POST 请求表单数据,包括 URL、表单字段和过期时间等信息。
注意:AWS SDK v3 中的 Aws::S3::Presigner#presigned_request
方法用于生成预签名的 S3 请求。在 AWS SDK v2 中,没有直接的等效方法,但可以使用 Aws::S3::PresignedPost
类来生成预签名的 S3 POST 请求。