当前位置:网站首页>NodeJs接收上传文件并自定义保存路径
NodeJs接收上传文件并自定义保存路径
2022-08-05 05:13:00 【Ly666_ever】
//接收上传文件并自定义保存路径
router.post('/upload', (req, res) => {
//创建formidable表单解析对象
const form = new formidable.IncomingForm();
//保留上传文件的后缀名字
form.keepExtensions = true;
//设置上传文件的保存路径
form.uploadDir = path.join(__dirname, 'uploads');
//解析客户端传递过来的formData对象
form.parse(req, (err, fields, files) => {
oldPath = files.file.newFilename;
console.log(fields);
oldPath = path.join(__dirname, './uploads/' + oldPath);
var name = path.join(__dirname, './' + fields.url + '/' + files.file.originalFilename);
if (!name.includes(__dirname))//规定在当前路径内,防止滥传路径出现问题
res.send('路径异常');
dirExists(path.join(__dirname, './' + fields.url)).then(() => {
fs.rename(oldPath, name, function (err) {
if (err) {
console.error("改名失败" + err);
}
})
res.send(fields);
})
})
})测试
url为需要保存的路径

边栏推荐
猜你喜欢

位运算符与逻辑运算符的区别

软件设计 实验四 桥接模式实验

u-boot调试定位手段

第二讲 Linear Model 线性模型

Flutter real machine running and simulator running

【cesium】Load and locate 3D Tileset

Algorithms - ones and zeros (Kotlin)

The role of DataContext in WPF

Dephi reverse tool Dede exports function name MAP and imports it into IDA
![coppercam入门手册[6]](/img/d3/a7d44aa19acfb18c5a8cacdc8176e9.png)
coppercam入门手册[6]
随机推荐
02.01-----参数的引用的作用“ & ”
Cryptography Series: PEM and PKCS7, PKCS8, PKCS12
Dephi逆向工具Dede导出函数名MAP导入到IDA中
仪表板展示 | DataEase看中国:数据呈现中国资本市场
数据库实验五 备份与恢复
RDD和DataFrame和Dataset
电话溥功能
The role of DataContext in WPF
开发一套高容错分布式系统
Detailed Explanation of Redis Sentinel Mode Configuration File
[WeChat applet] WXML template syntax - conditional rendering
Requests the library deployment and common function
Flutter学习4-基本UI组件
位运算符与逻辑运算符的区别
Flutter learning - the beginning
【解码工具】Bitcoin的一些在线工具
server disk array
redis复制机制
类的底层机制
Dephi reverse tool Dede exports function name MAP and imports it into IDA