2017-10-11 5 views
1

私のnode.jsコードでは、画像のように動的なファイルのフルパスをアップロードしたいと考えています。Node.js - Multerの使用アップロードファイル(ソースファイル)のフルパスを取得する方法は?

私が何をするか分からない、私はあなたのコメントからわかるように、私は

app.post('/upload', upload.single('userfile'), function(req, res){ 

    var filename = __dirname +'/'+ req.file.path; //this is uploaded file path 
    var s = fs.ReadStream(filename); 
    s.on('data', function(data) { 
    shasum.update(data) 
    }) 
    // making digest 
    s.on('end', function() { 
    var hash = shasum.digest('hex') 
    console.log("Hash : "+ hash + ' ' + filename) 
    res.send('Uploaded : ' + hash); 
    }) 
}) 

enter image description here

+0

フルパスのためにこれを試してください** VAR fullurlを= req.protocol + '://' + req.get( 'ホスト') + req.file.path; ** –

+0

エラー:ENOENT:そのようなファイルやディレクトリはありません 'C:\ nodejs \ example \ http:\ localhost:3000 \ uploads \ 4.4.1_翻訳.hwp' –

答えて

0

あなたの助けを必要とする、あなたは、ローカル環境を使用しています。したがって、ホストは完全なURLにつながることはありません。ホストを削除してみてください。

ので交換してください:

var filename = __dirname +'/'+ req.file.path; 

をして:

var filename = req.protocol + req.file.path; 
関連する問題