我正在编写一个MVC 3应用程序,需要允许用户直接将文件上传到S3。我还需要显示一个进度条。我见过的所有例子都是PHP或Ruby-on-Rails相关的。有没有人设法使用MVC直接(从客户端浏览器)将文件上传到S3?
答案 0 :(得分:2)
所以,在我的头撞到我的键盘的一个上午之后,下面的代码片段工作(删除了明显的凭据):
using (AmazonS3 client = Amazon.AWSClientFactory.CreateAmazonS3Client("Access_Key",
"Secret_Key"))
{
PutObjectRequest request = new PutObjectRequest();
request.WithBucketName("BUCKET-NAME")
.WithCannedACL(S3CannedACL.PublicRead)
.WithKey("myDirectory/" +
HttpContext.Current.Server.UrlEncode(fileBase.FileName))
.InputStream = fileBase.InputStream;
S3Response response = client.PutObject(request);
}