1

content-disposition プロパティを設定して、AWS S3 から PDF ファイルをダウンロードしようとしていました。ただし、Chrome と IE8 では、ダウンロードされる PDF の名前が異なります。

def set_attachment_content_disposition file_name
      style= :original
      path = self.asset.path(style) 
      bucket_name = self.asset.bucket_name 
      obj = AWS::S3::S3Object.find(path, bucket_name) 
      obj.content_disposition = 'attachment; filename="' + file_name + '"' 
      obj.store 
end

def download file_name
...
... 
// getting the s3 resource model object
res.set_attachment_content_disposition("TEST")
redirect_to res.asset_expiring_url
end

ここで chrome では、pdf は「TEST.pdf」として自動的にダウンロードされますが、IE8 では拡張子なしでダウンロードされます。

また、ファイル名にテストの代わりに「TEST.pdf」を渡すと、chrome では TEST.pdf.pdf としてダウンロードされ、IE8 では TEST.pdf としてダウンロードされます。

私が望むのは、両方のブラウザーで単一の pdf 拡張子を持つファイルをダウンロードできるようにすることです。不足しているプロパティはありますか? これは、リダイレクトで取得しているサンプルの最終 URL です。

https://s3.amazonaws.com/my_test_bucket/attachments/151/original/TEST-384239990.pdf?AWSAccessKeyId=my_access_id&Expires=1384240783&Signature=my_signature

4

0 に答える 0