当前位置: 首页 > news >正文

个人网站设计论文怎么写工作手机微信管理系统

个人网站设计论文怎么写,工作手机微信管理系统,上海人才市场招聘网,开发软件网站多少钱一、 Multer 模块介绍 Multer 是一个 node.js 中间件#xff0c;用于处理 multipart/form-data 类型的表单数据#xff0c;它主要用 于上传文件。 它是写在 busboy 之上非常高效。 注意: Multer 不会处理任何非 multipart/form-data 类型的表单数据。 https://www.npmjs.com…一、 Multer 模块介绍 Multer 是一个 node.js 中间件用于处理 multipart/form-data 类型的表单数据它主要用 于上传文件。 它是写在 busboy 之上非常高效。 注意: Multer 不会处理任何非 multipart/form-data 类型的表单数据。 https://www.npmjs.com/package/multer 二、 Express 上传文件模块 multer 的使用 安装 multer npm install --save multer引入配置 multer 模块 var multer require(multer) //配置 var storage multer.diskStorage({ //文件保存路径 注意路径必须存在destination: function (req, file, cb) { cb(null, public/upload/) },//修改文件名称 filename: function (req, file, cb) { var fileFormat (file.originalname).split(.); cb(null,Date.now() . fileFormat[fileFormat.length - 1]); } }) var upload multer({ storage: storage })使用 multer router.post(/doAdd, upload.single(pic), function (req, res) { res.send({ file: req.file,//返回文件名 body: req.body }) });第一种使用方式无法指定上传文件的后缀名 第二种可以指定文件的后缀名 const express require(express) var multer require(multer) const path require(path) // var upload multer({ dest: static/upload }) // 上传文件之前目录必须存在 var storage multer.diskStorage({// 配置上传的文件保存的目录destination: function (req, file, cb) {cb(null, static/upload)},// 修改上传的文件的文件名filename: function (req, file, cb) {// 1.获取后缀名let extname path.extname(file.originalname)// 2.根据时间戳生成文件名cb(null, Date.now() . extname)}}) var upload multer({ storage: storage }) var router express.Router() router.get(/,(req, res) {res.send(导航列表) }) router.get(/add,(req, res) {res.render(admin/nav/add.html) }) router.post(/doAdd, upload.single(pic) ,(req, res) {// 获取表单传过来的数据var body req.body;console.log(body)console.log(req.file)res.send({body: req.body,file: req.file}) })router.get(/edit,(req, res) {res.send(修改导航) })router.post(/doEdit,(req, res) {res.send(执行修改导航) })module.exports routertool.js : var multer require(multer) const path require(path)let tools {multer() {// var upload multer({ dest: static/upload }) // 上传文件之前目录必须存在var storage multer.diskStorage({// 配置上传的文件保存的目录destination: function (req, file, cb) {cb(null, static/upload)},// 修改上传的文件的文件名filename: function (req, file, cb) {// 1.获取后缀名let extname path.extname(file.originalname)// 2.根据时间戳生成文件名cb(null, Date.now() . extname)}})var upload multer({ storage: storage })return upload} }module.exports toolsnav.js: const express require(express) const tool require(../../model/tool)var router express.Router() router.get(/,(req, res) {res.send(导航列表) }) router.get(/add,(req, res) {res.render(admin/nav/add.html) }) router.post(/doAdd, tool.multer().single(pic) ,(req, res) {// 获取表单传过来的数据var body req.body;console.log(body)console.log(req.file)res.send({body: req.body,file: req.file}) }) // var multer require(multer) // const path require(path) // // var upload multer({ dest: static/upload }) // // 上传文件之前目录必须存在 // var storage multer.diskStorage({ // // 配置上传的文件保存的目录 // destination: function (req, file, cb) { // cb(null, static/upload) // }, // // 修改上传的文件的文件名 // filename: function (req, file, cb) { // // 1.获取后缀名 // let extname path.extname(file.originalname)// // 2.根据时间戳生成文件名 // cb(null, Date.now() . extname) // } // }) // var upload multer({ storage: storage })// router.post(/doAdd, upload.single(pic) ,(req, res) { // // 获取表单传过来的数据 // var body req.body; // console.log(body) // console.log(req.file) // res.send({ // body: req.body, // file: req.file // }) // })router.get(/edit,(req, res) {res.send(修改导航) })router.post(/doEdit,(req, res) {res.send(执行修改导航) })module.exports router三、 Express 按照日期生成上传文件目录 tool.js: var multer require(multer) const path require(path) const sd require(silly-datetime) const mkdirp require(mkdirp)let tools {multer() {// var upload multer({ dest: static/upload }) // 上传文件之前目录必须存在var storage multer.diskStorage({// 配置上传的文件保存的目录destination: async function (req, file, cb) {// 1.获取当前日期 20210417let day sd.format(new Date(), YYYYMMDD)let dir path.join(static/upload, day)// 2.按照日期生成图片存储目录await mkdirp(dir) // mkdirp()是一个异步方法cb(null, dir)},// 修改上传的文件的文件名filename: function (req, file, cb) {// 1.获取后缀名let extname path.extname(file.originalname)// 2.根据时间戳生成文件名cb(null, Date.now() . extname)}})var upload multer({ storage: storage })return upload} }module.exports toolsnav.js: const express require(express) const tool require(../../model/tool)var router express.Router() router.get(/,(req, res) {res.send(导航列表) }) router.get(/add,(req, res) {res.render(admin/nav/add.html) }) router.post(/doAdd, tool.multer().single(pic) ,(req, res) {// 获取表单传过来的数据var body req.body;console.log(body)console.log(req.file)res.send({body: req.body,file: req.file}) }) // var multer require(multer) // const path require(path) // // var upload multer({ dest: static/upload }) // // 上传文件之前目录必须存在 // var storage multer.diskStorage({ // // 配置上传的文件保存的目录 // destination: function (req, file, cb) { // cb(null, static/upload) // }, // // 修改上传的文件的文件名 // filename: function (req, file, cb) { // // 1.获取后缀名 // let extname path.extname(file.originalname)// // 2.根据时间戳生成文件名 // cb(null, Date.now() . extname) // } // }) // var upload multer({ storage: storage })// router.post(/doAdd, upload.single(pic) ,(req, res) { // // 获取表单传过来的数据 // var body req.body; // console.log(body) // console.log(req.file) // res.send({ // body: req.body, // file: req.file // }) // })router.get(/edit,(req, res) {res.send(修改导航) })router.post(/doEdit,(req, res) {res.send(执行修改导航) })module.exports router四、实现多文件上传 add.html: !DOCTYPE html html langen headmeta charsetUTF-8meta http-equivX-UA-Compatible contentIEedgemeta nameviewport contentwidthdevice-width, initial-scale1.0titleDocument/title /head bodyform action/admin/user/doAdd methodPOST enctypemultipart/form-data标题input typetext nametitle idtitlebrbr图片1input typefile namepic1 idpic1brbr图片2input typefile namepic2 idpic2brbr描述textarea namedesc iddesc cols30 rows10/textareabrbrinput typesubmit value提交/form/body /htmluser.js : const express require(express) const tool require(../../model/tool)var router express.Router()router.get(/,(req, res) {res.send(用户列表) })router.get(/add,(req, res) {res.render(admin/user/add.html) })let cpUpload tool.multer().fields([{ name: pic1, maxCount: 1 }, { name: pic2, maxCount: 1 }])router.post(/doAdd, cpUpload, (req, res) {res.send({body: req.body,files: req.files}) })router.post(/doEdit,(req, res) {res.send(执行修改用户) })router.get(/edit,(req, res) {res.send(修改用户) })module.exports routertool.js: var multer require(multer) const path require(path) const sd require(silly-datetime) const mkdirp require(mkdirp)let tools {multer() {// var upload multer({ dest: static/upload }) // 上传文件之前目录必须存在var storage multer.diskStorage({// 配置上传的文件保存的目录destination: async function (req, file, cb) {// 1.获取当前日期 20210417let day sd.format(new Date(), YYYYMMDD)let dir path.join(static/upload, day)// 2.按照日期生成图片存储目录await mkdirp(dir) // mkdirp()是一个异步方法cb(null, dir)},// 修改上传的文件的文件名filename: function (req, file, cb) {// 1.获取后缀名let extname path.extname(file.originalname)// 2.根据时间戳生成文件名cb(null, Date.now() . extname)}})var upload multer({ storage: storage })return upload} }module.exports tools
http://www.lebaoying.cn/news/65404.html

相关文章:

  • 成都网站开发收费网站建设+公司
  • 丹东网站优化中国设计人才网
  • 没有网站能做淘宝客吗软件外包公司容易进吗
  • 襄阳网站建设有哪些做普洱茶网站的
  • 网站建设预算和流程介绍网站安全建设总结
  • 企业网站建设如何做好外链建设自贡百度做网站多少钱
  • 人和马做的视频网站wordpress多站点使用期限插件
  • 写作教学网站wordpress 豆瓣fm
  • 360网站seo备案关闭网站建设影响
  • 襄阳建设网站公司公司手册制作网站
  • 网站开发合同 保密条款电子商务网站建设策划书模板
  • 济南富腾网站建设一级消防工程师考试题库2000题
  • 小榄公司网站建设中铁建设团门户网登录入口
  • 建设网站前台费用旅游网站建设代码
  • 网站弹窗代码重庆网站建设推广优化
  • 深圳网站建设ejaket800元做小程序网站
  • excel表如何做网站连接江门市
  • 网站建设 全包wordpress菜单添加
  • 做外包网站wordpress手机上图片
  • 全国网站建设人员数量pc网站 公众号数据互通
  • 关于高校网站建设论文的总结国内永久免费crm系统app
  • 电子商务建立网站前期准备提高网站排名
  • 大余做网站建设舟山房产信息交易网
  • wordpress 修改建站时间自己做网站的各种代码
  • 建设网站基本流程免费图片制作
  • 课程网站如何建设方案做网站用服务器
  • 网站搜索框代码怎么做网站架构设计文档
  • 淮安做网站找哪家好今天的最新消息新闻
  • 动漫视频网站开发做网站都需要准备什么
  • frp可以做网站吗广西南宁网站建设