10

URLを指定して、ブラウザに外部ストレージからファイルをダウンロードさせたい。このエクスプレス コントローラー ポスト アクションを実装しました。

var download = function(req, res) {
    request(req.body.url).on('response', function(response) {
        res.set({
            'Content-Disposition': 'attachment; filename=' + req.body.filename,
            'Content-Type': response.headers['content-type']
        });
    })
    .pipe(res);
};

ブラウザが「添付ファイル」ではなく「インライン」を常に受け​​取り、ファイルのダウンロードを回避する理由がわかりません。

この場合、express と request を使用します。サーバーは Heroku でホストされ、ファイルをホストするサーバーは FilePicker です。

4

1 に答える 1

11

私はまったく同じものを探しています。Express のドキュメントには、すぐに使用できる非常に単純なヘルパー メソッドが示されています。

var express = require('express');
var app = express();

app.get('/download', function(req, res) {
  res.download('/path/to/your_file.pdf');
});
于 2016-04-02T17:44:29.343 に答える