2011-07-31 7 views
0

Je télécharge l'image en utilisant aws-s3 gem, il télécharge parfaitement et donnez-moi l'url. L'image est au format PNG mais quand je clique sur l'url publique dans mon navigateur, elle commence à télécharger, mais je ne veux pas la télécharger, je veux voir l'image dans le navigateur.Amazon S3 télécharger Image de Rails

S'il vous plaît dites-moi si vous savez quel paramètre dans la demande suivante devrait être ajouté pour cela ou quel changement est requis pour y parvenir?

AWS::S3::S3Object.store(base_name,open(local_file),bucket,:content_type => mime_type,:access => :public_read,:authenticated => false) 

s3_url = AWS::S3::S3Object.url_for(params[:name],bucket)[/[^?]+/] 
+0

Etes-vous sûr que ce n'est pas seulement une question de navigateur? Est-ce que l'autre affichage de png est désiré? – tybro0103

+0

@umair J'ai juste essayé votre code avec mon application, et cela fonctionne parfaitement, quand je clique sur le lien l'image est chargée dans mon navigateur. De plus, comme vous téléchargez avec: access =>: public_read, ajoutez ceci à s3_url, s3_url = AWS :: S3 :: S3Object.url_for (params [: nom], bucket,: authentication => false) [/ [^? ] + /], qui est suggéré par les documents s3 – Hishalv

Répondre

0

Vérifiez :content_type => mime_type si mime_type est correct.

+0

ici, mime_type est mime_type = "application/octet-stream" –

+0

changez le en 'image/png' –