AWS S3 C ++:我应该使用UploadFile()还是PutObject()来上传文件?区别在哪里?

时间:2019-01-15 08:00:18

标签: c++ amazon-web-services amazon-s3

对于新项目,我们必须将文件上传到AWS S3。 C ++ SDK让我们以两种方式执行此操作。 第一种方法是使用Transfermanager及其UploadFile()方法。 其次,我们可以使用Aws :: S3 :: Model :: PutObjectRequest()。

这些方法之间是否有重要区别?我已经读到putObject()自动计算哈希值,并提供对哈希值的检查(如果文件已上传)。那UploadFile()呢?

std::shared_ptr<Aws::Transfer::TransferHandle> handle = 
transfermanager->UploadFile(Aws::String("C:/test.txt"),  
Aws::String("bucketName"), 
Aws::String(key), Aws::String("multipart/form-data"), metadata);

-----------------

auto request = Aws::S3::Model::PutObjectRequest();
request.WithBucket("bucketName").WithKey(key);
request.SetBody(input_data);
request.SetMetadata(metadata);

s3client->PutObject(request);

两者均导致文件上传到S3存储桶。我说不出任何区别。

0 个答案:

没有答案