聊聊node+multiparty怎么实现文件上传

利用node怎么实现文件上传?下面本篇文章就来给大家介绍一下node结合multiparty实现文件上传的方法,希望对大家有所帮助!

聊聊node+multiparty怎么实现文件上传

文件上传是每个项目中大概必不可少的操作,今天我们用nodejs实现一个文件上传模块。

1.模块

npm i multiparty
npm i express

2.代码

代码我们放在(upload.js)文件中,文件中代码如下:

文心一言 文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

文心一言 1008 查看详情 文心一言

// 上传文件模块const multiparty = require('multiparty')// 文件操作模块const fs = require('fs')// 导入express框架const express = require('express')// 路由const router = express.Router()// 上传文件接口router.post('/upload/file', (req, res) => {    /* 生成multiparty对象,并配置上传目标路径 */    let form = new multiparty.Form();    // 设置编码    form.encoding = 'utf-8';    // 设置文件存储路径,以当前编辑的文件为相对路径    form.uploadDir = './public';    // parse,表单解析器    // fields :普通的表单数据    // files:上传的文件的信息    form.parse(req, function (err, fields, files) {        try {            // 文件为files.file[0]            let upfile = files.file[0]            // 为文件进行命名,修改upfile文件中的path,否则会随机生成文件名            let newpath = form.uploadDir + '/' + upfile.originalFilename  //文件名            // 重命名            fs.renameSync(upfile.path, newpath);            // 返回信息,((upfile.size)/1048576).toFixed(2)将文件由B转换为M的单位并进行取小数点后两位进行四舍五入向上取操作            res.send({                code:200,                msg:'File Success',                file_name:upfile.originalFilename,                file_size:((upfile.size)/1048576).toFixed(2)+'M'            })        } catch {            //    异常情况下的消息            console.log(err)            res.send({                code:401,                msg:'File error',                more_msg:err            })        }    })})// 导出该模块供main主函数文件中进行调用module.exports = router

3.main.js文件

// 引入express模块const express = require('express')// 实例化expressconst app = express()// 文件夹映射app.use('/static',express.static('public'))// 上传文件接口const upload=require('./router/upload')app.use(upload)// 监听服务app.listen('3333', '0.0.0.0', (res) => {    console.log('Server running http://127.0.0.1:3333')})

4.示例

在这里插入图片描述
收工

更多node相关知识,请访问:nodejs 教程!

以上就是聊聊node+multiparty怎么实现文件上传的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/550033.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月9日 19:34:39
下一篇 2025年11月9日 19:35:22

相关推荐

发表回复

登录后才能评论
关注微信