分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 网页技术

Nodejs进阶:基于express+multer的文件上传

发布时间:2023-09-06 01:06责任编辑:沈小雨关键词:jsNode文件上传
  • 安装组件

npm install express multer --save
  • 服务端代码server.js

var Express = require(‘express‘);var multer = require(‘multer‘);var bodyParser = require(‘body-parser‘);var app = Express();app.use(bodyParser.json());// multer 提供了 storage 这个参数来对资源保存的路径、文件名进行个性化设置。var Storage = multer.diskStorage({ ???destination: function (req, file, callback) { ???????callback(null, "./Images"); ???}, ???filename: function (req, file, callback) { ???????callback(null, file.fieldname + "_" + Date.now() + "_" + file.originalname); ???}});//Field name and max count 多个文件上传var upload = multer({ storage: Storage }).array("imgUploader", 3); // var upload = multer({ dest: ‘upload/‘ });简单配置// 也可以写在post方法中 // app.post(‘/upload-single‘, upload.single(‘imgUploader‘), function(req, res, next){// ????res.send({ret_code: ‘0‘});// });app.get("/", function (req, res) { ???res.sendFile(__dirname + "/index.html"); ???//也可以这样读取文件 ???// var form = fs.readFileSync(‘./form.html‘, {encoding: ‘utf8‘}); ???// res.send(form);});app.post("/api/Upload", function (req, res) { ???upload(req, res, function (err) { ???????if (err) { ???????????return res.end("Something went wrong!"); ???????} ???????return res.end("File uploaded sucessfully!."); ???});});app.listen(2000, function (a) { ???console.log("Listening to port 2000");});
  • 前端页面index.html

<form id="frmUploader" enctype="multipart/form-data" action="api/Upload/" method="post"> ???????<input type="file" name="imgUploader" multiple /> ???????<input type="file" name="imgUploader" multiple /> ???????<input type="file" name="imgUploader" multiple /> ???????<input type="submit" name="submit" id="btnSubmit" value="Upload" /></form>
  • 运行服务

node server

访问 http://127.0.0.1:2000/ ,选择文件,点击“提交”,done。然后,你就会看到Images目录下多了个文件。

  • 文件信息

  • console.log(‘文件类型:%s‘, file.mimetype);console.log(‘原始文件名:%s‘, file.originalname);console.log(‘文件大小:%s‘, file.size);console.log(‘文件保存路径:%s‘, file.path);

Nodejs进阶:基于express+multer的文件上传

原文地址:http://www.cnblogs.com/cosyer/p/7429328.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved