¿Cómo agrego un encabezado HTTP de Cache-Control a las imágenes que subo a Amazon S3?

StackOverflow https://stackoverflow.com/questions/1808556

  •  05-07-2019
  •  | 
  •  

Pregunta

Creo que probablemente me esté perdiendo algo en los documentos aquí, pero ¿cómo puedo especificar que las imágenes que subo a S3 tienen un encabezado de Cache-Control cuando se solicita?

Esta respuesta parece sugerir que puede hacerlo agregando metadatos, pero el ejemplo no es demasiado claro. ¿Alguien puede indicarme un ejemplo de código o alguna documentación sobre cómo haría esto en C #, por favor?

¿Fue útil?

Solución 2

Bueno, resulta que esto es posible utilizando la API REST para S3, pero no utilizando los métodos SOAP. Así que la respuesta para mí es simplemente 'no', a menos que reescribamos todo nuestro código para usar la API REST.

Consulte esta publicación del Foro de Soporte de AWS .

Otros consejos

Para aquellos que lean esta pregunta más recientemente, puede usar La propiedad Headers.CacheControl de TransferUtilityUploadRequest (Nota: Al momento de escribir la documentación de AWS no es obvio que esta es una propiedad disponible).

por ejemplo

// 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);
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top