• 推动长江经济带发展 习近平要求境界和担当 2019-11-11
  • 丰台东铁匠营街道:品粽赏乐感受改革开放四十周年 2019-11-11
  • 学习宣传宪法 弘扬法治精神 2019-11-07
  • 山东搭建“灯塔—党建在线”网络平台 2019-11-07
  • 2016杨宗纬VOCAL巡演北京站正式开票杨宗纬VOCAL 2019-11-04
  • 年龄大了,也想积点口德,已经给你笔下留情了。 2019-11-04
  • 人民网通行证——帮助 2019-11-03
  • 端午节,跟随习近平找寻中华民族“精气神” 2019-10-30
  • 天津加入抢人大战,你会否挑花眼? 2019-10-29
  • “海河英才”行动计划为企业解渴 2019-10-29
  • 在庆祝海南建省办经济特区30周年大会上的讲话 2019-10-07
  • 俄罗斯世界杯F组:球迷风采 2019-09-24
  • 彭于晏廖凡曝姜文“精神洁癖” 2019-09-24
  • 苏州大学研究生支教团网上众筹资助留守儿童 2019-09-23
  • 湖北政务微信排行榜第187期出炉 交警类公号表现亮眼 2019-09-19
  • 香港赛马会铁算盘3438:Node.js + express实现上传大文件的方法分析【图片、文本文件】

     更新时间:2019年03月14日 10:05:40   作者:水中鱼之1999   我要评论
    这篇文章主要介绍了Node.js + express实现上传大文件的方法,结合实例形式分析了Node.js + express针对图片、文本文件上传操作实现方法及相关操作注意事项,需要的朋友可以参考下

    香港赛马会网站惠泽社绝杀八码 www.mwcrz.tw 本文实例讲述了Node.js + express实现上传大文件的方法。分享给大家供大家参考,具体如下:

    对于大文件的上传我们首先要引入一个叫做 multer 的库:

    npm install --save multer
    
    

    关于这个库,大家可以查阅官方文档:

    点击跳转 https://www.npmjs.com/package/multer

    我们先将库引入我们的项目中:

    var multer = require('multer')
    var upload = multer({ dest: 'uploads/' })// 文件会上传到这个目录
    
    

    具体的 get 方法:

    app.post('/upload', upload.single('logo'), function(req, res){//发送 json 数据到这个路由
      console.dir(req.file);
      res.send(req.p);
    })
    
    

    由于上传文件要用到表当,所以我们这里先建立一个名为 form 表单:

    <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <meta name="viewport" content="width=device-width, initial-scale=1.0">
      <meta http-equiv="X-UA-Compatible" content="ie=edge">
      <title>Document</title>
    </head>
      <form action="/upload" method="post" enctype="multipart/form-data">
        <h2>单图上传</h2>
        <input type="file" name="logo">
        <input type="submit" value="提交">
      </form>
    <body>
    </body>
    </html>
    
    

    然后我们在 server 中引入该表单:

    var fs = require('fs')
    // /from 的 html 界面,用于演示上传文件
    app.get('/form',function(req, res){
      var form = fs.readFileSync('./form.html',{ encoding : "utf8"});
      res.send(form);
    })
    
    

    由 localhost:3000/form 运行后上传文件,就能在你项目的upload目录下可看到:

    虽然上传成功,但w我n看到文件名是混乱的,而且路径也是固定:

    修改路径和文件名:

    // 更改大文件的存储路径
    var createFolder = function(folder){
      try{
        fs.accessSync(folder);
      }catch( e ){
        fs.mkdirSync(folder);
      }
    };
    var uploadFolder = './upload/';// 设定存储文件夹为当前目录下的 /upload 文件夹
    createFolder(uploadFolder);
    // 磁盘存贮
    var storage = multer.diskStorage({
      destination: function (req, file, cb) {
        cb(null, uploadFolder );// 他会放在当前目录下的 /upload 文件夹下(没有该文件夹,就新建一个)
      },
      filename: function (req, file, cb) {// 在这里设定文件名
        cb(null, file.originalname );
      }
    })
    var upload = multer({ storage: storage })
    
    

    效果:

    最后,这里是视屏连接方便大家学习:

    https://www.bilibili.com/video/av24385038/?p=6

    希望本文所述对大家nodejs程序设计有所帮助。

    相关文章

    • 修改npm全局安装模式的路径方法

      修改npm全局安装模式的路径方法

      今天小编就为大家分享一篇修改npm全局安装模式的路径方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
      2018-05-05
    • Node.JS在命令行中检查Chrome浏览器是否安装并打开指定网址

      Node.JS在命令行中检查Chrome浏览器是否安装并打开指定网址

      这篇文章主要介绍了Node.JS在命令行中检查Chrome浏览器是否安装,并打开指定网址,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
      2019-05-05
    • nodejs图片处理工具gm用法小结

      nodejs图片处理工具gm用法小结

      这篇文章主要介绍了nodejs图片处理工具gm用法小结,详细的介绍了gm的使用,还有图片处理的实例,非常具有实用价值,需要的朋友们下面随着小编来一起学习学习吧
      2018-12-12
    • node.js中的fs.ftruncate方法使用说明

      node.js中的fs.ftruncate方法使用说明

      这篇文章主要介绍了node.js中的fs.ftruncate方法使用说明,本文介绍了fs.ftruncate的方法说明、语法、接收参数、使用实例和实现源码,需要的朋友可以参考下
      2014-12-12
    • express如何使用session与cookie的方法

      express如何使用session与cookie的方法

      本篇文章主要介绍了express如何使用session与cookie的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
      2018-01-01
    • 详解用Node.js写一个简单的命令行工具

      详解用Node.js写一个简单的命令行工具

      本篇文章主要介绍了详解用Node.js写一个简单的命令行工具,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
      2018-03-03
    • 详解nodejs通过响应回写的方式渲染页面资源

      详解nodejs通过响应回写的方式渲染页面资源

      本篇文章主要介绍了详解nodejs通过响应回写的方式渲染页面资源,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
      2018-04-04
    • Node.js中 __dirname 的使用介绍

      Node.js中 __dirname 的使用介绍

      这篇文章主要给大家介绍了关于Node.js中 __dirname使用的相关资料,文中介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
      2017-06-06
    • nodejs实现范围请求的实现代码

      nodejs实现范围请求的实现代码

      这篇文章主要介绍了nodejs实现范围请求的实现代码,使服务器支持范围请求,允许客户端只请求文档的一部分,非常具有实用价值,需要的朋友可以参考下
      2018-10-10
    • nodejs初始化init的示例代码

      nodejs初始化init的示例代码

      今天小编就为大家分享一篇nodejs初始化init的示例代码,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
      2018-10-10

    最新评论

  • 推动长江经济带发展 习近平要求境界和担当 2019-11-11
  • 丰台东铁匠营街道:品粽赏乐感受改革开放四十周年 2019-11-11
  • 学习宣传宪法 弘扬法治精神 2019-11-07
  • 山东搭建“灯塔—党建在线”网络平台 2019-11-07
  • 2016杨宗纬VOCAL巡演北京站正式开票杨宗纬VOCAL 2019-11-04
  • 年龄大了,也想积点口德,已经给你笔下留情了。 2019-11-04
  • 人民网通行证——帮助 2019-11-03
  • 端午节,跟随习近平找寻中华民族“精气神” 2019-10-30
  • 天津加入抢人大战,你会否挑花眼? 2019-10-29
  • “海河英才”行动计划为企业解渴 2019-10-29
  • 在庆祝海南建省办经济特区30周年大会上的讲话 2019-10-07
  • 俄罗斯世界杯F组:球迷风采 2019-09-24
  • 彭于晏廖凡曝姜文“精神洁癖” 2019-09-24
  • 苏州大学研究生支教团网上众筹资助留守儿童 2019-09-23
  • 湖北政务微信排行榜第187期出炉 交警类公号表现亮眼 2019-09-19
  • 压宝玩法 湖北体彩11选5选号技巧 时时彩全天95计划网 小雨赚钱入口怎么删除 博彩刷流水要注意什么 AG疯狂马戏团开奖结果 北京pk1o计划稳定全天免费计划 排列三开奖官网同步 dota小鹿暴力出装 在线棋牌下载送10元