Node.js——异步上传文件
Posted 站错队了同志
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Node.js——异步上传文件相关的知识,希望对你有一定的参考价值。
前台代码
submit() { var file = this.$refs.fileUpload.files[0]; var formData = new FormData(); formData.append("file", file); formData.append("username", this.username); formData.append("password", this.password); axios.post("http://127.0.0.1:3000", formData).then(res => { console.log(res); }); }
后台代码
app.use(function (req, res) { var form = new formidable.IncomingForm(); form.uploadDir = path.join(__dirname, ‘uploads‘) form.parse(req, function (err, fields, files) { fs.rename(files.file.path, path.join(__dirname, ‘uploads‘, files.file.name), function (err) { if (!err) { return res.end(‘ok‘) } res.end(‘err‘) }) }); })
注意
- 前端利用formData才能拿到file数据,这是xhr异步上传文件提供的接口
- 后台代码如果不使用formidable这个包,那么对接受过来的二进制数据自己处理是非常麻烦的
以上是关于Node.js——异步上传文件的主要内容,如果未能解决你的问题,请参考以下文章
H5拖放+FormData接口+NodeJS,完整异步文件上传
Node.js插件编写-异步AsyncWorker的代码实现
Node.js插件编写-异步AsyncWorker的代码实现