Express使用Multer实现文件上传

本文详细介绍了如何使用Express的Multer中间件实现文件上传,包括安装Multer、前端和后端的处理、Multer对象的配置如dest、storage、limits、fileFilter等,以及错误处理和多文件上传的实现方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

express使用Multer实现文件上传

  介绍一下如何使用 Express 框架的 Multer 中间件实现接收从前端传过来的文件并保存在本地。


  目录:


安装 Multer

  在使用 Multer 之前需要先安装它:

$ npm install multer --save 

要想学会怎么用 node.js 的 express 框架可以看看这里


前端上传

// html
<input type="file" value=""/>
// js
var Input = document.querySelector("input");
Input.onchange = function upload(){
   
   
    var files = !!this.files ? this.files : [];
    if (!files.length || !window.FileReader) {
        console.log("浏览器不支持HTML5");
        return false;   
    };
    // 创建一个FormData对象,用来组装一组用 XMLHttpRequest发送请求的键/值对
    var fd = new FormData();
    // 把 input 标签获取的文件加入 FromData 中
    fd.append('file', files[0]);

    // Ajax
    var request = new XMLHttpRequest();
    request.open("POST", "http://localhost:5000/upload");
    request.send(fd);
    request.onreadystatechange = function(){
   
   
        if(request.readyState === 4 & request.status === 200){
            console.log("上传成功");
            var response = JSON.parse(request.responseText);
            console.log(response);
        }
    }
}

服务端接收文件

// app.js

// 在 app.js 中加载我们写好的处理文件上传的模块
var upload = require('./routes/upload');

// 允许跨域访问
app.all('*', function(req, res, next) {  
    res
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值