我正在尝试将nodeJS和express.router中的文件发送到客户端 . 但我得到这个错误:
... webserver / node_modules / express / lib / response.js:412 if(done)return done(err); ^ TypeError:done不是SendStream.ondirectory上/home/alex/project/webserver/node_modules/express/lib/response.js:412:22的函数(/ home / pthong / project / webserver / node_modules / express / lib /response.js:986:5)在SendStream.redirect的SendStream.emit(events.js:166:7)的emitNone(events.js:67:13)(/ home / alex / project / webserver / node_modules / express) /node_modules/send/index.js:401:10)atstat(/home/alex/project/webserver/node_modules/express/node_modules/send/index.js:622:41)at FSReqWrap.oncomplete(fs.js: 82:15)
这是我的代码:
router.get('/getFile/:filename', function(req,res){
res.sendFile(__dirname, '../uploads', req.params.filename);
});
如果我试试这个:
res.sendFile('/uploads/'+ req.params.filename);
我收到下一个错误:
错误:ENOENT:没有这样的文件或目录,stat'/uploads/audiomessage-10207974875988003-1327917607235274-1461074839300.3gpp'出错(原生)
这是网络服务器的结构:网络
网络服务器
--- server.js
---上传
----- audio-461074839300.3gpp
----- audio-234.3gpp