首页
学习
活动
专区
圈层
工具
发布

FormData对象的应用

2008年 2 月,XMLHttpRequest Level 2 草案提出来了,相对于上一代,它有一些新的特性,其中 FormData 就是 XMLHttpRequest Level 2 新增的一个对象...一、FormData对象作用 用一些键值对来模拟一系列表单控件:即把form中所有表单元素的name与value组装成 一个queryString 异步上传二进制文件 二、FormData的使用 先来看一下...append方法和set都可以向FormData中添加数据,不同的是set方法是直接向FormData中添加,覆盖掉之前的数据,append方法是向其追加数据,即name对应的value将成为一个数组,...落帆亭"] fd.has("name")//true 使用FormData对象发送文件 通过FormData可以实现异步上传文件。...cache: false, // 不缓存 processData: false, // jQuery不要去处理发送的数据

1.9K30

Blob、ArrayBuffer、File、FileReader和FormData的区别

前言 Blob、ArrayBuffer、File、FileReader、FormData这些名词总是经常看到,知道一点又好像不知道,像是同一个东西好像又不是,总是模模糊糊,最近终于下决心要弄清楚。...这些名词里: Blob、ArrayBuffer、File可以归为一类,它们都是数据; FileReader算是一种工具,用来读取数据; FormData可以看做是一个应用数据的场景。...因此,我们首先着重区分Blob、ArrayBuffer、File,然后再对fileReader和FormData做简要介绍。...准确来说,FormData其实与上述内容关系就不大了。...FormData的最大优点就是,比起普通的ajax, 使用FormData我们可以异步上传一个二进制文件,而这个二进制文件,就是我们上面讲的Blob对象。

5.4K21
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Ajax文件上传时:Formdata、File、Blob的关系

    Formdata接口 “Formdata”接口提供了一种表示表单数据的键值对 key/value 的构造方式,并且可以轻松的将数据通过XMLHttpRequest.send() 方法发送出去。...方法、属性如下: FormData([Form])创建一个新的 FormData 对象,form这种方式创建的FormData对象会自动将form中的表单值也包含进去,包括文件内容也会被编码之后包含进去...FormData.get()返回在 FormData 对象中与给定键关联的第一个值。 FormData.getAll()返回一个包含 FormData 对象中与给定键关联的所有值的数组。...首先创建一个a标签,href属性赋值为要下载文件对象的URL,然后调用a标签上的click()方法就可以下载file文件到本地了。...只要持续发送数据则不会断掉 3.客户端部分 修改客户端执行上传时,限制的超时时间。

    3.9K30

    SpaceX发送短信成功,卫星通信要白菜价了吗?

    SpaceX的推特上宣布了手机通过卫星发送和接收到了第一条短信: 在星链的加持下,全球可以无死角全覆盖了,不管你是在城市,还是在山野,在无人区,在天涯海角,都可以使用卫星进行通信。...卫星通信是地球上的无线电通信站间用卫星为中继的通信,凡是在卫星电波所覆盖的范围内,任何两点之间都能够进行通信。...卫星天线的工作模式是将卫星信号,反射到位于焦点处的馈源和高频接收头内。卫星天线除了接收反射信号以外,它的另一个作用就是消除掉信号中的杂质,让信号不受干扰。...卫星天线信号的强弱和它抛物面的大小以及安装的方向等都有很大的关系。...卫星通信的原理 把卫星发射到赤道上空 36000km 高的对地静止轨道上,再用卫星上的通信转发器接收从地面站发射出来的信号,对信号进行放大变频后再转发给其他地面站,来完成两个地面站之间的传输。

    39210

    如何使用FormData上传压缩裁剪后的图片Blob对象

    这些功能我们通常通过Canvas来进行,最后使用Canvas API函数toDataURL来得到图片的Base64字符串,然后当我们要上传到后台的时候,会面临2种选择: 直接将图片的Base64字符串Post...到后端进行处理和保存 在前端将Base64字符串转换成二进制的Blob对象形式,再使用常规的文件上传形式(即FormData)来将其上传到后端 第一种方式对前端来说比较简单,主要的处理逻辑在后端。...而第二种的话前端的工作就稍微复杂一些。考虑到后端采用接收二进制文件的方式来处理文件上传的情况比较多,所以我们来看一下前面所说的第二种情况在前端怎么来实现,以下是主要的示例代码: formData = new FormData(); //注意:此处第3个参数最好传入一个带后缀名的文件名,否则很有可能被后台认为不是有效的图片文件...: formData.append("file", blob, file.name); 如果不传第三个参数的话,生成的表单数据中,上传文件对应的filename会被设置为blob: ?

    4K30

    XMLHttpRequest2-FormData上传文件方法封装及进度条的实现

    https://blog.csdn.net/wkyseo/article/details/51240496 FormData类型其实是在XMLHttpRequest 2级定义的,它是为序列化表以及创建与表单格式相同的数据...(当然是用于XHR传输)提供便利,使用FormData的最大优点就是我们可以异步上传一个二进制文件,兼容性需要IE10+。...); void append(DOMString name, DOMString value); 如果指定的key不存在则会新增一条数据,如果key存在,则添加到数据的末尾 formData.append...formData.getAll("k1"); // ["v1","v2","v1"] get formData.get("name"); // 获取key为name的第一个值 formData.getAll...Function && option.uploadProgress(per); }; xhr.open("post", url, true); //不能是GET, get请求数据发送只能拼接在

    1.3K50

    springMVC实现文件图片的上传下载功能详解(源码已提供,小白必看)(一)

    ,用户可以点击该按钮后选择本地要上传的文件 在页面中使用input标签,type值设置为”file”即可 确定上传请求的发送方式 上传成功后的响应结果在当前页面显示,使用ajax请求来完成资源的发送 上传请求的请求数据及其数据格式...在上传请求中,将请求数据以二进制流的方式发送给服务器。 4....在ajax中如何发送二进制流数据给服务器 ① 创建FormData的对象,将请求数据存储到该对象中发送 ② 将processData属性的值设置为false,告诉浏览器发送对象请求数据 ③ 将contentType...var file=$("#file")[0].files[0]; //创建FormData对象存储要上传的资源 var formData...获取到了,将数据利用ajax发送,所以需要将数据放到formDate对象里面 //创建FormData对象存储要上传的资源 var formData=new FormData

    2.4K30

    msmq发送速度的测试

    在一些并发量比较高的"中小型"应用中,如果短期内有大量的数据插入,利用msmq中转是一个不错的选择(petshop就是这么干的),想知道msmq一秒钟内到底能发多少条记录吗?  ...msg.Body = i.ToString().PadLeft(8, '0'); 27 //msg.Recoverable = true;//设置消息可恢复(即服务器重启后,消息还在,但是启用这个选项将会使发送时间加倍...,因为"可恢复"的机制就是先在服务器硬盘生成文本文件,多了一次写文件的IO操作) 28                 queue.Send(msg); 29             } 30 31             ...stopWatch.Stop(); 32 33             Console.WriteLine("{0}条发送完成,共耗时:{1}秒,平均每秒发送{2}条!"...T60上跑出来的结果,大概1s钟能发2500条左右(也就是说下订单的话,一秒钟能顺畅下2500张单子,中小型购物系统中应该够用了)

    2K90

    发送带附件的邮件

    一、在发送文件时,有时需要发送附件。下面的代码实现了带附件的邮件发送: ? 代码运行结果: ? 成功发送带附件的邮件,如图所示: ? 通过MIMEMultipart()模块构造的带附件的邮件。...二、查找最新的测试报告 已经知道了如何通过Python编写发邮件程序,但是想和自动化测试项目结合还需要解决一个问题,因为测试报告的名称是根据当前时间生成的,所以如何找到最新生成的测试报告是实现发邮件功能的关键...首先定义测试报告的目录result_dir,os.listdir()可以获取目录下的所有文件及文件夹。利用sort()方法对目录下的文件及文件夹按时间重新排序。...list[-1]取到的就是最新生成的文件或文件夹。程序运行结果如下: ? 三、总结 学习代码,一定要认真细致,一个细小的疏忽就会导致错误。...而且别人写的代码也不一定就对,要根据自己的实际情况,抱着肯吃苦肯钻研,热爱技术的心态,坚持去做,才会越来越进步。

    1.3K10
    领券