html部分:

  //input type设为file
<input type="file" name="file" id="fileInputElement" />
<button id="submit">提交</button>

script部分

   var btn = document.getElementById('submit');
var fileInputElement = document.getElementById('fileInputElement'); btn.onclick = function () { var oMyForm = new FormData();
//append来添加文件,
oMyForm.append("afile", fileInputElement.files[]); var oReq = new XMLHttpRequest(); oReq.open("POST", "/test"); //用FormData生成的对象的好处是,send不需要setRequestHeader
oReq.send(oMyForm);
}

后台nodejs部分

const app = express();
const multer = require('multer');
var upload = multer({dest:'file/'})//multer的参数dest表示文件接受后存放的地址 app.post('/test',upload.single('afile'),(req,res)=>{ })
 
 

ajax传文件用express的multer接住的更多相关文章

  1. nodejs --- 上传文件并保存到磁盘

    先复习下整个请求的过程 const express = require('express'); const static = require('express-static'); const cook ...

  2. express搭建web服务器、路由、get、post请求、multer上传文件、EJS模板引擎的使用

    express官网 postman工具下载地址  multer的npm文档地址 express模板引擎怎么使用  地址:http://www.expressjs.com.cn/guide/using- ...

  3. ajax上传文件显示进度

    下面要做一个ajax上传文件显示进度的操作,文末有演示地址 这里先上代码: 1.前端代码 upload.html <!DOCTYPE html> <html lang="e ...

  4. nodejs express 上传文件 (格式 FormData)

    前台代码使用jQuery的ajax: <script type="text/javascript"> $(function(){ $('#file_upload').c ...

  5. 关于ajax 异步文件上传 node 文件后台接口

    <body> <img src="" alt="" id="img"> <input type="f ...

  6. IE8/9 JQuery.Ajax 上传文件无效

    IE8/9 JQuery.Ajax 上传文件有两个限制: 使用 JQuery.Ajax 无法上传文件(因为无法使用 FormData,FormData 是 HTML5 的一个特性,IE8/9 不支持) ...

  7. 1. Django系列之Django与ajax上传文件

    html代码如下: <div class="form-group"> <label for="exampleInputFile">附件上 ...

  8. Ajax方式上传文件

    用到两个对象 第一个对象:FormData 第二个对象:XMLHttpRequest 目前新版的Firefox 与 Chrome 等支持HTML5的浏览器完美的支持这两个对象,但IE9尚未支持 For ...

  9. 很方便的后台ajax上传文件

    <a href="javascript:void(0);" url="{:U('teacherd?id='.$vo['id'])}" class=&quo ...

随机推荐

  1. python3-获取对象信息

    当我们拿到一个对象的引用时,如何知道这个对象是什么类型.有哪些方法呢? 使用type() 首先,我们来判断对象类型,使用type()函数: 基本类型都可以用type()判断: >>> ...

  2. 十、S3C2440 开发资源

    10.1 S3C2440 内部资源 1.2V 内核供电, 1.8V/2.5V/3.3V 储存器供电, 3.3V 外部 I/O 供电,具备 16KB 的指令缓存和 16KB 的数据缓存和 MMU 的微处 ...

  3. u-boot-2019.07 移植步骤

    doc/README.kconfig Tips to add/remove boards------------------------- When adding a new board, the f ...

  4. 用doxygen+graphviz生成函数调用流程图

    https://www.jianshu.com/p/fe4b6b95dca5 注意点:由于使用到了Graphviz,所以要设置Dot选项,勾选HAVE_DOT,并设置DOT_PATH为Graphviz ...

  5. 什么原因?全球许多网络提供商推迟部署IPv6

    全球许多网络提供商推迟部署IPv6,指出升级路由器和交换机的成本以及NAT为扩展IPv4地址所取得的令人印象深刻的成就. 这并没有阻止像澳门CTM这样的互联网服务供应商不要冒险,以此为榜样,并且满足终 ...

  6. SpringCloud学习系列-Eureka服务注册与发现(4)

    actuator与注册微服务信息完善 1.主机名称:服务名称修改 当前问题 含有主机名称 修改修改microservicecloud-provider-dept-8001 的yml文件 修改内容 eu ...

  7. 15 Spring Boot Shiro 验证码

    1. <dependency> <groupId>com.github.axet</groupId> <artifactId>kaptcha</a ...

  8. Java中高级面试题(1)

    List和Set比较,各自的子类比较 对比一:Arraylist与LinkedList的比较 1.ArrayList是实现了基于动态数组的数据结构,因为地址连续,一旦数据存储好了,查询操作效率会比较高 ...

  9. CSS设置透明背景

    filter: alpha(opacity=40); background-color: rgb(0, 0, 0); background-color: rgba(0, 0, 0, 0.4); 通过改 ...

  10. animate(动画)框架 和 swiper (轮播)框架 的使用

    swiper.js 框架 网址:https://www.swiper.com.cn/ 是一个专门做轮播,切换特效的轮播 使用方法: 然后进入案例,通过案例来进行各种功能的实现, 这一步是教我们怎么做, ...