2017-02-12 8 views
0

エクスプレスサーバーで奇妙な問題に直面しています。実行時に作成されたフォルダ内にファイルをダウンロードする必要があります。これは私のコードです:エクスプレスサーバーでダウンロードするファイルが見つかりません

var folder = id.toString() 
      var file = [projectRoot,"/app/temp/",folder, "/registrazioni.zip"].join("") 
      console.log('file',file) 
      res.download(file,'registrazioni.zip') 

私はすべての変数が定義されていることを知っているが、エラーが発生しres.download:

{ [Error: ENOENT: no such file or directory, stat '/home/giuseppe/projects/csgSAW/app/temp/undefined/registrazioni.zip'] 

はerrno:-2、 コード: 'ENOENT'、 システムコール: 'STAT'、 パス: '/home/projects/csgSAW/app/temp/undefined/registrazioni.zip' は、 が露出:偽、 からstatusCode:404、 ステータス:404}

どこにフォルダがあるのか​​は不明ですが、res.downloadの直前のconsolo.logは正しいので、私は非常に困惑しています。何が間違っているのか分かりません。 私はノード4.2.6で作業しており、^ 4.14.0を表現しています。ありがとうございました

+0

「id」とは何ですか?あなたのパス '(.../temp/undefined/registrazioni.zip')に見られるように、あなたの' folder'は 'undefined'です。 – Benni

+0

id = new Date()。getTime()とにかく、idがconsole.logで未定義でないことがわかっています – arpho

答えて

0

変数は未定義です。idです。

where I should see the folder, got undefined, but the consolo.log just before res.download is correct

文字列がconsole.log行には正しく表示されますが、それ以下ではありません。本当にそうなら、何かがidを 'undefined'に置き換えるために文字列を変更しているに違いありません。

+0

console.logにoutpuのペーストビンを作成しました://pastebin.com/z76Tpabr idは正しいですが、私は文字列を変更したかどうかわかりません – arpho

関連する問題