要使用Perl生成Amazon S3预签名URL,你需要使用AWS SDK for Perl。首先,确保你已经安装了该SDK:
cpan AWS::S3
或者使用CPANM:
cpanm AWS::S3
以下是一个使用Perl生成S3预签名URL的示例:
use strict;
use warnings;
use AWS::S3;
# 配置AWS访问密钥和私密访问密钥
my $access_key = 'your_access_key';
my $secret_key = 'your_secret_key';
my $bucket_name = 'your_bucket_name';
my $key_name = 'your_object_key'; # 文件在S3桶中的名称
# 创建S3客户端
my $s3 = AWS::S3->new(
aws_access_key_id => $access_key,
aws_secret_access_key => $secret_key,
default_region => 'us-west-2', # 例如:us-west-2
);
# 生成预签名URL
my $url = $s3->get_object_url(
bucket => $bucket_name,
key => $key_name,
expires_in => 3600, # 预签名URL的有效期(秒)
);
print "预签名URL: $url\n";
请确保将your_access_key
,your_secret_key
,your_bucket_name
和your_object_key
替换为你的实际值。
如果你使用的是AWS CLI配置文件,你可以使用以下代码来获取预签名URL:
use strict;
use warnings;
use AWS::S3;
# 使用AWS CLI配置文件中的凭证和区域
my $s3 = AWS::S3->new();
# 生成预签名URL
my $url = $s3->get_object_url(
bucket => 'your_bucket_name',
key => 'your_object_key',
expires_in => 3600, # 预签名URL的有效期(秒)
);
print "预签名URL: $url\n";
同样,请确保将your_bucket_name
和your_object_key
替换为你的实际值。
领取专属 10元无门槛券
手把手带您无忧上云