AWS S3 .Net 复制对象,其键在末尾包含点
AWS S3 .Net copy object that key contains dots at end
我将 AWSSDK 用于 .Net,我的复制文件代码是:
CopyObjectRequest request = new CopyObjectRequest()
{
SourceBucket = _bucketName,
SourceKey = sourceObjectKey,
DestinationBucket = _bucketName,
DestinationKey = targetObjectKey
};
CopyObjectResponse response = amazonS3Client.CopyObject(request);
该代码非常适合普通文件,但是当我尝试复制文件名为 'mage...' 的文件时,出现以下错误消息:
The request signature we calculated does not match the signature you provided. Check your key and signing method.
有没有办法为那种类型的文件复制对象?
我使用以下 C# 代码在 S3 文件夹之间复制文件。
AmazonS3Config cfg = new AmazonS3Config();
cfg.RegionEndpoint = Amazon.RegionEndpoint.EUCentral1;//my bucket has this Region
string bucketName = "your bucket";
AmazonS3Client s3Client = new AmazonS3Client("your access key", "your secret key", cfg);
S3FileInfo sourceFile = new S3FileInfo(s3Client, bucketName, "FolderNameUniTest179/Test.test.test.pdf");
S3DirectoryInfo targetDir = new S3DirectoryInfo(s3Client, bucketName, "Test");
sourceFile.CopyTo(targetDir);
S3FileInfo sourceFile2 = new S3FileInfo(s3Client, bucketName, "FolderNameUniTest179/Test...pdf");
sourceFile2.CopyTo(targetDir);
我正在为 .net 3.5 使用亚马逊 AWSSDK.Core 和 AWSSDK.S3 版本 3.1.0.0。希望对你有帮助。
我将 AWSSDK 用于 .Net,我的复制文件代码是:
CopyObjectRequest request = new CopyObjectRequest()
{
SourceBucket = _bucketName,
SourceKey = sourceObjectKey,
DestinationBucket = _bucketName,
DestinationKey = targetObjectKey
};
CopyObjectResponse response = amazonS3Client.CopyObject(request);
该代码非常适合普通文件,但是当我尝试复制文件名为 'mage...' 的文件时,出现以下错误消息:
The request signature we calculated does not match the signature you provided. Check your key and signing method.
有没有办法为那种类型的文件复制对象?
我使用以下 C# 代码在 S3 文件夹之间复制文件。
AmazonS3Config cfg = new AmazonS3Config();
cfg.RegionEndpoint = Amazon.RegionEndpoint.EUCentral1;//my bucket has this Region
string bucketName = "your bucket";
AmazonS3Client s3Client = new AmazonS3Client("your access key", "your secret key", cfg);
S3FileInfo sourceFile = new S3FileInfo(s3Client, bucketName, "FolderNameUniTest179/Test.test.test.pdf");
S3DirectoryInfo targetDir = new S3DirectoryInfo(s3Client, bucketName, "Test");
sourceFile.CopyTo(targetDir);
S3FileInfo sourceFile2 = new S3FileInfo(s3Client, bucketName, "FolderNameUniTest179/Test...pdf");
sourceFile2.CopyTo(targetDir);
我正在为 .net 3.5 使用亚马逊 AWSSDK.Core 和 AWSSDK.S3 版本 3.1.0.0。希望对你有帮助。