CNode

nodejs+express4实现文件上传功能报错

问答
Zzoran-hwang发布于10 年前最后回复10 年前6 回复5069 浏览0 收藏

app.post('/file/uploading', function(req, res){ //生成multiparty对象,并配置上传目标路径 var form = new multiparty.Form({uploadDir: '../public/files/'}); //上传完成后处理 form.parse(req, function(err, fields, files) { var filesTmp = JSON.stringify(files,null,2); if(err){ console.log('parse error: ' + err); } else { console.log('parse files: ' + filesTmp); var inputFile = files.inputFile[0]; var uploadedPath = inputFile.path; var dstPath = './public/files/' + inputFile.originalFilename; //重命名为真实文件名 fs.rename(uploadedPath, dstPath, function(err) { if(err){ console.log('rename error: ' + err); } else { console.log('rename ok'); } }); } res.writeHead(200, {'content-type': 'text/plain;charset=utf-8'}); res.write('received upload:\n\n'); res.end(util.inspect({fields: fields, files: filesTmp})); }); });

  • 这是网上看的实现上传的代码,将其放在了index.js中,暴露出app。
  • 上传页面是这样写的
		<input name='inputFile', type='file', multiple='mutiple'/>
		<input name='btnUp', type='submit', value='上传'/>
</form>
  • 在上传功能之前写的其他模块都可以正常运行。当文件上传的时候:
  • 控制面板会输出 POST /file/uploading 404 0.262 ms - 28
  • 页面会显示 Cannot POST /file/uploading
  • 求解这是什么错误,该怎么解决。node新手,谢谢各位了。
查看回复

回复 (6)

Z
zoran-hwang#1·10 年前

额额,谢谢各位的回复。后来放了一会没管自动就好了,我也不知道什么问题。。感谢各位的回复。

F
fghpdf#2·10 年前

额,撞大运编程了? From Noder

C
captainblue2013#3·10 年前

路由不对

Z
zoran-hwang#4·10 年前
引用 captainblue2013路由不对

@captainblue2013 啊,路由不对吗,那请问该怎么样改? 可是我表单就是写着,action='/file/uploading' 路由也监听 app.post(’/file/uploading’, function(req, res){ 不太明白哪里出错了。

H
htoooth#5·10 年前

都报错了,明显错误,页面会显示 Cannot POST /file/uploading,路由不对。 状态码: 404 Not Found 服务器无法找到被请求的页面。

S
SHocker-Yu#6·10 年前

app.use('/XXX',require('./routers/index.js')) ?

参与回复
登录后即可参与回复。登录