代码之家  ›  专栏  ›  技术社区  ›  Mark Bell

如何向上传到AmazonS3的图像添加缓存控制HTTP头?

  •  1
  • Mark Bell  · 技术社区  · 15 年前

    我想我可能只是在这里的文档中遗漏了一些东西,但是如何指定我上传到S3的图像在被请求时有一个缓存控制头?

    This answer 似乎建议您可以通过添加元数据来做到这一点,但示例并不太清楚。有人能给我一个代码示例或一些文档,说明我如何在C中完成这项工作吗?

    2 回复  |  直到 10 年前
        1
  •  5
  •   mips    10 年前

    对于最近阅读此问题的人,可以使用 TransferUtilityUploadRequest headers.cachecontrol标题 属性(注意:在编写AWS文档时,这并不明显是一个可用属性)。

    // Make the upload request with the required cache and header parameters
    var fileTransferUtilityRequest = new TransferUtilityUploadRequest
    {
       BucketName = BucketName,
       FilePath = fileName,
       StorageClass = S3StorageClass.Standard,
       Key = keyName,
       CannedACL = S3CannedACL.PublicRead,
       ContentType = contentType,
    };
    
    fileTransferUtilityRequest.Headers.CacheControl = "max-age=604800";
    var fileTransferUtility = new TransferUtility(...);
    fileTransferUtility.Upload(fileTransferUtilityRequest);
    
        2
  •  3
  •   Mark Bell    15 年前

    好吧,事实证明使用RESTAPI for S3是可能的,但不使用SOAP方法。所以我的答案是“不”,除非我们重写所有代码来使用RESTAPI。

    See this AWS Support Forum post .