express+multer实现node图片上传的具体步奏

这次给大家带来express+multer实现node图片上传的具体步奏,express+multer实现node图片上传的注意事项有哪些,下面就是实战案例,一起来看一下。

下文给大家介绍使用express+multer实现node中的图片上传功能,具体内容介绍如下所示:

在前端中,我们使用ajax来异步上传图片,使用file-input来上传图片,使用formdata对象来处理图片数据,post到服务器中

在node中使用multer中间件来对上传路由接口进行处理

multer文档

package.jsonhtml部分

express+multer实现node图片上传的具体步奏

登录后复制

js部分

      //上传图片的业务逻辑函数    function uploadFile(){      //上传图片的input      var file = document.getElementById("file")      //因为准备用post提交,又因为图片的内容比较大,所以我们选择使用formdata来承载数据      //创建formdata对象      var formData = new FormData();      //给formdata对象中放入数据(键值对的方式)      formData.append('file',file.files[0]);      //提交请求      $.ajax({        url: '/upload',//请求路径        type: 'POST',        data: formData,        contentType: false,//为了让浏览器根据传入的formdata来判断contentType        processData: false,//同上        success: function(data){          if(200 === data.code) {            $('#result').html("上传成功!");            $('#img').attr('src',data.data);          } else {            $('#result').html("上传失败!");          }          console.log(2)        },        error: function(){          $("#result").html("与服务器通信发生错误");        }      });      console.log(1)    }    //给按钮添加点击事件    function postPage() {        //上传按钮        var uploada = document.getElementById('upload');        uploada.addEventListener("click",function () {          uploadFile();        },false);    }    window.onload = function () {      postPage();    }

登录后复制

NodeJS逻辑代码

const http = require('http')const path = require('path')const express = require('express')//是nodejs中处理multipart/form-data数据格式(主要用在上传功能中)的中间件//文档:https://github.com/expressjs/multer/blob/master/doc/README-zh-cn.mdconst multer = require('multer')const app = express()//配置express的静态目录app.use(express.static(path.join(dirname, 'public')));app.get('/',(req,res)=>{  res.sendFile(dirname+'/index.html')})//配置diskStorage来控制文件存储的位置以及文件名字等var storage = multer.diskStorage({  //确定图片存储的位置  destination: function (req, file, cb){    cb(null, './public/uploadImgs')  },![](http://images2017.cnblogs.com/blog/1283058/201802/1283058-20180201154342296-515041615.png)  //确定图片存储时的名字,注意,如果使用原名,可能会造成再次上传同一张图片的时候的冲突  filename: function (req, file, cb){    cb(null, Date.now()+file.originalname)  }});//生成的专门处理上传的一个工具,可以传入storage、limits等配置var upload = multer({storage: storage});//接收上传图片请求的接口app.post('/upload', upload.single('file'), function (req, res, next) {  //图片已经被放入到服务器里,且req也已经被upload中间件给处理好了(加上了file等信息)  //线上的也就是服务器中的图片的绝对地址  var url = '/uploadImgs/' + req.file.filename  res.json({    code : 200,    data : url  })});http.createServer(app).listen(3000,()=>{  console.log('server is listening')})

登录后复制

自我感觉良好,不知道博客园为什么要给我移除首页….

再发一次,if(delete){alert('Never publish anything again.')}else{alert(1)}

登录后复制

相信看了本文案例你已经掌握了方法,更多精彩请关注【创想鸟】其它相关文章!

推荐阅读:

Django的cookie使用详解

JS的正则怎么替换url参数

以上就是express+multer实现node图片上传的具体步奏的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2773129.html

(0)
上一篇 2025年3月8日 13:39:19
下一篇 2025年3月8日 13:39:28

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 在vue项目中怎样使用上传组件

    这次给大家带来在vue项目中怎样使用上传组件,在vue项目中使用上传组件的注意事项有哪些,下面就是实战案例,一起来看一下。 本文介绍了vue项目中使用element-ui的Upload上传组件的示例,分享给大家,具体如下: 确定 登录后复制…

    编程技术 2025年3月8日
    200
  • node Async的异步处理使用详解

    这次给大家带来node Async的异步处理使用详解,node Async异步处理使用详解的注意事项有哪些,下面就是实战案例,一起来看一下。 最近在研究nodejs,令我感受比较深的是……熟悉js代码的地球人都知道,js的加载顺序很重要!很…

    编程技术 2025年3月8日
    200
  • Node的模块系统使用详解

    这次给大家带来Node的模块系统使用详解,Node模块系统使用的注意事项有哪些,下面就是实战案例,一起来看一下。 模块是构建应用程序的基础,也使得函数和变量私有化,不直接对外暴露出来,接下来我们就要介绍Node的模块化系统和它最常用的模式 …

    编程技术 2025年3月8日
    200
  • 微信小程序怎样使图片上传至服务器

    这次给大家带来微信小程序怎样使图片上传至服务器,微信小程序使图片上传至服务器的注意事项有哪些,下面就是实战案例,一起来看一下。 -wxml 发布项目 /**选择图片 */ choose: function () { var that = t…

    编程技术 2025年3月8日
    200
  • multer上传如何使用

    这次给大家带来multer上传如何使用,multer上传使用的注意事项有哪些,下面就是实战案例,一起来看一下。 收获还是蛮多的,主要在于wenpack使用的一些细节问题,有点茅塞顿悟的体验吧,另外在node上也不再一脸懵逼了。不过说实话,以…

    编程技术 2025年3月8日
    200
  • node操作文字生成图片

    这次给大家带来node操作文字生成图片,node操作文字生成图片的注意事项有哪些,下面就是实战案例,一起来看一下。 解决思路 文字转svg -> svg转png -> 合并图片 相关轮子 images Node.js 轻量级跨平…

    编程技术 2025年3月8日
    200
  • angularJS+Ionic在移动端进行图片上传(附代码)

    这次给大家带来angularJS+Ionic在移动端进行图片上传(附代码),angularJS+Ionic在移动端进行图片上传的注意事项有哪些,下面就是实战案例,一起来看一下。 前端开发中经常会碰到图片上传的问题,网上的解决办法很多,可是有…

    编程技术 2025年3月8日
    200
  • angularJS+Ionic实现移动端图片上传功能

    这次给大家带来angularJS+Ionic实现移动端图片上传功能,angularJS+Ionic实现移动端图片上传功能的注意事项有哪些,下面就是实战案例,一起来看一下。 前端开发中经常会碰到图片上传的问题,网上的解决办法很多,可是有些图片…

    编程技术 2025年3月8日
    200
  • Angularjs实现图片预览上传

    这次给大家带来Angularjs实现图片预览上传,Angularjs实现图片预览上传的注意事项有哪些,下面就是实战案例,一起来看一下。 废话不多说了,直接给大家贴代码了,具体代码如下所示: app.factory(“fileReader”,…

    编程技术 2025年3月8日
    200
  • Ajaxupload多文件上传

    这次给大家带来ajaxupload多文件上传,ajaxupload多文件上传的注意事项有哪些,下面就是实战案例,一起来看一下。            $msg, ‘filedir’ => $filedir); sleep(2); ec…

    编程技术 2025年3月8日
    200

发表回复

登录后才能评论