1
我已经按照express multipart example上传文件到服务器,它工作正常。但是,如果使用路由中间件像这样(的CoffeeScript):上传文件与nodejs和连接形式
loadUser = (req, res, next) ->
if req.session.user_id?
db.user.findById req.session.user_id, (err, user) ->
if user?
req.currentUser = user
next()
else
next()
else
next()
app.post '/file',loadUser, (req, res) ->
req.form.complete (err, fields, files) ->
if (err)
console.error err
else
console.log '\nuploaded %s to %s', files.image.filename, files.image.path
req.form.on 'progress', (bytesReceived, bytesExpected) ->
percent = (bytesReceived/bytesExpected * 100) | 0;
process.stdout.write 'Uploading: %' + percent + '\r'
文件不上传并没有什么日志,并没有错误。 然后我清除loadUser的代码是这样的:
loadUser = (req, res, next) ->
next()
它再次工作正常。 我的loadUser方法有什么问题吗?