1

我试图通过设置 content-disposition 属性从 AWS S3 下载 PDF 文件。但是正在下载的 PDF 的名称在 Chrome 和 IE8 中是不同的。

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