使用.net的Amazon API设置内容编码和内容类型

本文关键字:编码 类型 设置 net Amazon API 使用 | 更新日期: 2023-09-27 18:10:48

如何设置S3桶文件头:

内容编码:gzip内容类型:文本/css

我正在使用Amazon API使用。net SDK。我正在使用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);

我做错了什么?

使用.net的Amazon API设置内容编码和内容类型

当时接受的答案是正确的,但API在2014年更新了,所以这是新的方式

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

在2019年使用最新的API,代码将看起来像这样:

PutObjectRequest request = new PutObjectRequest {
    BucketName = bucketName,
    ContentType = "text/css",
    Key = filename
};
request.Headers.ContentEncoding = "gzip";

你在api的contentType属性中添加content-type,如下所示

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

//用于内容编码//添加以下标题

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

希望对大家有所帮助