0

目前我正在使用viddler进行不同的服务和视频上传。我也想为亚马逊S3服务器上的内容备份提供服务。为了开发此服务,我使用了适用于.NET的AWS开发工具包。当我尝试上传网址传递,因为它给了我下面的错误的文件路径的文件:
"the specified file does not exist"从Url上传文件到Amazone S3 [文件不存在错误]

我的问题是:是否从另一个域AWS SDK支持内容上传到编程s3的或任何其他方法?

我的代码:

PutObjectRequest titledRequest = new PutObjectRequest(); 
titledRequest.WithMetaData("title", "the title") 
//.WithContentBody("this object has a title") 
.WithBucketName(bucketName) 
.WithFilePath("http://download.microsoft.com/download/9/2/2/9222D67F-7630-4F49-BD26-  476B51517FC1/FileFormatConverters.exe") //does url support? 
.WithTimeout(3600000) 
.WithReadWriteTimeout(3600000) 
.WithKey("test.ext"); 

using (S3Response responseWithMetadata = client.PutObject(titledRequest)) 
{ 
} 
+0

为什么在'WithFilePath'参数中有一个空格? – uday 2012-02-15 16:52:29

+0

@Dave它的错误 .WithFilePath(“http://download.microsoft.com/download/9/2/2/9222D67F-7630-4F49-BD26-476B51517FC1/FileFormatConverters.exe”) 我认为amazone s3 doest不支持拉文件请求 – user1211865 2012-02-15 17:36:21

+0

任何人都可以帮忙吗? – user1211865 2012-02-21 15:56:00

回答

0
上传

至S3需要与内容长度的元数据组中的字节流整。您将不得不创建一个实时缓冲区,以接收来自源url的数据并异步地将其传递到S3 PutObject请求。

您可以做到这一点的方法之一是有两个缓冲区,可将来自源的字节流简化为可用作分段上传的一部分的设置块大小。

SDK,我怀疑是否支持这个,所以你必须使用对AWS服务的REST调用来实现这一点。