nodejs+ajax实现简单的文件上传功能

app.js中引入express的第三方中间件multer实现文件上传功能。

var multer  = require('multer');//用express的第三方中间件 multer 实现文件上传功能。
app.use(multer({//设置文件上传到的位置
  dest: './public/images/upload',
  rename: function (fieldname, filename) {
    return filename;
  }
}));

路由

app.post('/upload', function (req, res) {
        req.flash('success', '文件上传成功!');
        res.json({"result":{message:"文件上传成功!"}});
    });

html

<input type="file" id="photo">

<button id="upload">上传</button>

 

ajax

    /*上传文件*/
        $("#upload").click(function(){
            //do something
            var file = $("#photo")[0].files;
            //上次修改时间
            console.log("文件上次修改时间"+file[0].lastModifiedDate);
            //名称
            console.log("文件名称"+file[0].name);
            //大小 字节
            console.log("文件大小"+file[0].size);
            //类型
            console.log("文件类型"+file[0].type);
            //创建FormData对象
            var data = new FormData();
            //为FormData对象添加数据
            $.each(file, function(i, file) {
                data.append('upload_file', file);
            });
            $.ajax({
                data: data,
                url: '/upload',
                type:"post",
                dataType: 'JSON',
                contentType: false,    //不可缺
                processData: false,    //不可缺
                success: function(data){
                    console.log(data);
                    alert("上传成功!");
                },
                error: function(err){
                    console.log('error: ' + err);
                }
            });
        })

 

转载于:https://www.cnblogs.com/kelly007/p/5374378.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值