前言
最近在学习nodejs,分享一个比较常用的demo小案例,话不多说,直接上例子。
文件目录
server_file.js
const express = require('express')
const bodyParser = require('body-parser')
const multer = require('multer')
const fs = require('fs')
const pathLib = require('path')
var objMulter = multer({dest: './www/upload/'})
// 基于express框架的node服务器
var server = express()
// 允许所有类型的文件传递过来
server.use(objMulter.any())
server.post('/', function(req,res){
// 因为上传过来的文件名称比较复杂,我们需要给文件重新命名
var newName = req.files[0].path+pathLib.parse(req.files[0].originalname).ext
// 利用fs模块的文件重命名
// req.files[0].path这个是文件的在传递中被修改的名字,newName是文件原名称,function回调函数
fs.rename(req.files[0].path, newName, function(err){
if(err){
res.send('失败')
}else{
res.send('成功')
}
})
})
// 监听端口
server.listen(8080,function(){
console.log('服务启动中~~')
});
复制代码
upload.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<form action="http://localhost:8080/" method="post" enctype="multipart/form-data">
文件:<input type="file" name="f1" /><br>
<input type="submit" value="上传">
</form>
</body>
</html>
复制代码
只需要这2个文件即可实现简单的文件上传了。
接下来我们试一下
1.在目录下开启打开cmd node server_load.js
这样一个上传文件到node服务器上的demo就完成了哦。大家有什么不懂的,或者小强哪里没有讲好的,大家多多指出来。新年快乐,天天进步。