2014-02-10 27 views
2

以前使用AWSSDK v1.5.12.0下面的代碼只是正常工作:Amazon Api升級似乎已經刪除了一些方法?

request.WithBucketName(_bucketName) 
     .WithCannedACL(S3CannedACL.PublicRead) 
     .WithKey(filePath).InputStream = inputStream; 

request.AddHeaders(AmazonS3Util.CreateHeaderEntry("ContentType", contentType)); 

現在我使用v2.0.8.0出於某種原因,他們已經完全改變了API。

我掙扎的部分是AddHeaders方法不再存在(也AmazonS3Util.CreateHeaderEntry

我現在無法添加標題,因爲我以前一樣。

有一個只讀Headers財產,我無法找到另一種方式來添加它......我該怎麼辦呢?

+0

我不知道,但AWS API文檔任何線索列出'Amazon.S3.Model.HeadersCollection'它可能就是你要找的 – Alex

+0

正如我上面提到的標題集合是隻讀的。 – shenku

+2

V2升級非常廣泛。你是否檢查了遷移指南 - http://docs.aws.amazon.com/AWSSdkDocsNET/latest/DeveloperGuide/net-dg-migration-guide-v2.html –

回答

1

你是正確的,AWS SDK 2.X去掉了一些方法,一個是「AddHeader的」方法。要添加頁眉您只需直接修改集合。

req.Headers["expires"] = "Thu, 01 Dec 1994 16:00:00 GMT";

這裏是例如添加的Expires頭:

var client = new Amazon.S3.AmazonS3Client(AWS_Key, AWS_SecretKey); 

var req = PutObjectRequest req= new PutObjectRequest() 
{ 
    BucketName = "mybucket", 
    Key = "myfile.txt", 
    FilePath = @"C:\myfile.txt" 
}; 

req.Headers["expires"] = "Thu, 01 Dec 1994 16:00:00 GMT"; 

client.PutObject(req); 
相關問題