Amazon S3 non invia intestazione Content-Type


10

Ho un'applicazione che scarica contenuti da varie fonti. Si basa sull'intestazione "Content-Type" impostata sulle immagini. La maggior parte dei server Web lo fa correttamente ma sembra che il server Amazon S3 non stia impostando il Content-Type.

Presumo che i server Amazon siano configurati correttamente, quindi quale potrebbe essere il problema? Queste immagini non sono state caricate correttamente? O non dovrei fare affidamento sul tipo di contenuto impostato?

Esempio

Grazie


Credo che tu sia in grado di impostare il tipo di contenuto durante il caricamento del file su Amazon S3. Tuttavia, non so cosa faccia delle intestazioni predefinite del tipo di contenuto. E questo ovviamente non ti aiuta quando non sono i tuoi file.
WheresAlice,

L'ho visto, ma non avendo un account non posso provarlo. Conoscere la risposta non risolverà il mio problema, ma potrebbe suggerire di aggirare non basandomi sul tipo di contenuto.

Risposte:


7

I file caricati su S3 devono aver informato l'intestazione Content-Type. Non esiste una definizione di tipo di contenuto predefinita come quelle che puoi fare su un "normale" server di contenuti (che non sarebbe una cattiva idea!) Per cartella.


1

Quando si caricano oggetti su S3, è possibile impostare un tipo di MIME che verrà restituito nell'intestazione Content-Type ai client. S3 non aggiungerà questa intestazione da sola, quindi se l'utente non ha impostato quel valore non verrà restituita alcuna intestazione Content-Type.

I server HTTP non sono tenuti a fornire l'intestazione Content-Type, quindi suggerirei un meccanismo di fallback. Forse potresti guardare l'URL e indovinare dall'estensione del file? È un po 'un trucco, ma funzionerebbe almeno nell'esempio che hai fornito.


1

Devi impostare questo.

Sulla console di gestione aws, se si accede al file in questione, è possibile fare clic su "Proprietà". Quindi nella parte inferiore dello schermo su Metadata. Se è impostato il tipo di contenuto chiave, modificarlo nel modo desiderato, altrimenti aggiungere una nuova chiave, selezionare Tipo di contenuto e impostarlo sul valore appropriato.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.