Nodejs的实现文件传输保存

前言

最近在学习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



  
    "utf-8">
    
  
  
    
"http://localhost:8080/" method="post" enctype="multipart/form-data"> 文件:type="file" name="f1" />
type="submit" value="上传">
复制代码

只需要这2个文件即可实现简单的文件上传了。

接下来我们试一下

我们传递一张图片到www/upload目录下去。

1.在目录下开启打开cmd node server_load.js

2.打开upload.html

一些的操作都完成了,我们来看看www/upload目录下是否多了一个图片呢。

这样一个上传文件到node服务器上的demo就完成了哦。大家有什么不懂的,或者小强哪里没有讲好的,大家多多指出来。新年快乐,天天进步。

你可能感兴趣的:(Nodejs的实现文件传输保存)