मैं अपने Node.js एप्लिकेशन के माध्यम से अपने S3 बाल्टी में चित्र अपलोड कर रहा हूं। मेरे पास निम्नलिखित बाल्टी नीति है।

{
  "Version": "2008-10-17",
  "Statement": [
    {
      "Sid": "AllowPublicRead",
      "Effect": "Allow",
      "Principal": {
        "AWS": "*"
      },
      "Action": "s3:GetObject",
      "Resource": "arn:aws:s3:::bucket_name/*"
    }
  ]
}

जब मैं फ़ाइल के लिंक पर जाता हूं तो इसे एक छवि कहने देता हूं। यह स्वचालित रूप से एक फ़ाइल के रूप में डाउनलोड होता है और ब्राउज़र में प्रस्तुत नहीं होता है। ब्राउज़र में छवि को स्वचालित रूप से डाउनलोड किए बिना ब्राउज़र में इसे प्रदर्शित करने का कोई विचार है?

1
Harsha M V 27 मार्च 2020, 19:49

1 उत्तर

सबसे बढ़िया उत्तर

के Content-Type को स्पष्ट रूप से सेट करें image/<appropriate-subtype> के साथ ऑब्जेक्ट।

var params = { Bucket: '', Key: '', ContentType: 'image/png',  ... }

डिफ़ॉल्ट Content-Type application/octet-stream होगा, इस प्रकार ब्राउज़र में रेंडर करने के बजाय इसे डाउनलोड किया जा रहा है।

2
franklinsijo 27 मार्च 2020, 19:19