2011-10-06 23 views
4

如何設置的S3存儲文件頭如下所示:設置和內容類型與亞馬遜API用於.NET

內容編碼:gzip 內容類型:文本/ CSS

我正在使用適用於.NET的SDK的Amazon API。我使用PutObjectRequest將文件上傳到S3。上傳文件時,內容類型和內容編碼標頭不會更新(我通過亞馬遜控制檯上的文件屬性進行了檢查)。

例如:

request.AddHeader("expires", EXPIRES_DATE); 
request.AddHeader("content-encoding", "gzip");   
request.ContentType = "text/css"; 

也試過:

NameValueCollection metadata = new NameValueCollection(); 
metadata.Add("content-type", "text/css"); 
metadata.Add("content-encoding", "gzip"); 
request.WithMetaData(metadata); 

我做錯了嗎?

回答

1

你的內容類型添加到contentType屬性在API像下面

PutObjectRequest request = new PutObjectRequest(); 
    string contentType = "text/css"; 
    request = request.WithContentType(contentType); 

//內容編碼的 //添加下列頭

request.AddHeader("content-encoding","gzip"); 

希望這可以幫助

1

當時接受的答案是正確的,但在2014年更新了API,因此這是新方法

PutObjectRequest request = new PutObjectRequest 
{ 
    BucketName = bucketName, 
    ContentType = "text/css", 
    Key = filename 
}; 
request.Headers["Content-Encoding"] = "gzip";