2016-07-12 28 views
0

私はnodejsで書かれた単純なファイルサーバーを持っています。サーバーのURLへのGETリクエストのように応答します。www.site.com/cdn/filename/latestこれは、ユーザーがwget要求を行い、 "filename"という名前のファイルの最新バージョンを取得できるようにします。 。問題は、結果のファイルの名前が「最新」であり、「ファイル名」ではないということです。HttpResponseでダウンロードしたファイルの名前を設定する方法は?

ヘッダー経由で返信されるファイルの名前を設定する方法はありますか?

以下の方法で応答を書き込みます。

function sendFile(res, filepath) { 
    res.writeHead(200, { 
     'Content-Type': mime.lookup(filepath) 
    }) 
    fs.createReadStream(filepath).pipe(res) 
} 

答えて

0

コンテンツの配置は使用するヘッダーです。 w3.org

const path = require('path') 
function sendFile(res, filepath) { 
    var filename = path.basename(filepath) 
    res.writeHead(200, { 
     'Content-Type': mime.lookup(filepath), 
     'Content-Disposition': 'inline; filename="'+filename+'"' 
    }) 
    fs.createReadStream(filepath).pipe(res) 
} 
関連する問題