node之处理用户上传的post文件

首先,创建一个大概这样的文件夹

其中,node_moduels文件夹为自动生成,但是这需要我们安装一些node需要的模块(代码中会包含这些模块),cnpm install ....

下面为代码部分

1、node.js

const express = require('express');
const bodyparser = require('body-parser');//解析post数据
const multer = require('multer'); //解析Post文件
const fs = require('fs');
const pathlib = require('path'); //解析文件路径

var server = express();

var objMulter = multer({dest:'./www/upload'}); //用户上传文件存入dest目录下
server.use(objMulter.any()); //处理任何用户上传的文件

//处理post文件数据
server.post('/',function(req,res){
	console.log(req.files[0].originalname); //req.files post文件 originalname为文件名

	//获取原始拓展名+后缀名
	var newName = req.files[0].path+pathlib.parse(req.files[0].originalname).ext;

	//重命名
	fs.rename(req.files[0].path,newName,function(err){
		if(err){
			res.send('上传失败');
		}else{
			res.send('上传成功');
		}
	});

});

//监听
server.listen(8080);

 2、HTML部分

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
</head>
<body>
	<form action="http:localhost:8080/" method="post" enctype="multipart/form-data">
		文件:<input type="file" name="fl" /><br/>
		<input type="submit" value="上传">
	</form>
</body>
</html>

最终的结果就是,可以在./www/upload目录下看到我们所上传的文件(文件类型随意)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值