使用pkgcloud和express管道s3文件下载时如何保留文件名

时间:2013-03-30 20:12:09

标签: node.js

我正在使用快速服务器来代理从亚马逊s3下载的文件。如何保留标题中的文件名或在标题中设置文件名信息,这样当用户下载文件名时,它不仅仅是说s3.jpeg而是正确地说是test.jpg?

 app.get("/s3", function(req, res) {
    var client;

    client = require('pkgcloud').storage.createClient({
      provider: "amazon",
      key: "test",
      keyId: "test"
    });
    return client.download({
      container: 'test',
      remote: 'test.jpg'
    }).pipe(res);
  });

1 个答案:

答案 0 :(得分:3)

好的,看起来很容易

res.setHeader('Content-disposition','attachment; filename = test.jpg');

在coffeescript中

app.get "/s3", (req, res) ->

    res.setHeader('Content-disposition', 'attachment; filename=test.jpg');

    client.download(
        container:'test'
        remote:'test.jpg'
    ).pipe res