formdata上传文件

FormData解决ajax上传文件的问题及ajax跨域

≡放荡痞女 提交于 2020-02-28 21:21:44
通过FormData对象可以组装一组用 XMLHttpRequest发送请求的键/值对。它可以更灵活方便的发送表单数据,因为可以独立于表单使用。如果你把表单的编码类型设置为multipart/form-data ,则通过FormData传输的数据格式和表单通过submit() 方法传输的数据格式相同 Html代码部分 <div id="uploadForm"> <input id="file" type="file" name="musicname"/> <button id="upload" type="button">upload</button> </div> javaScript var formData = new FormData(); formData.append('file',document.getElementById("fileupload").files[0]); formData.append('test','test23333'); $.ajax({ url: "http://192.168.199.100:8080/api/file/upload", type: "POST", data: formData, contentType: false, processData: false, dataType: "json", success:

new FormData() 前端上传文件图片到服务器

一曲冷凌霜 提交于 2020-02-27 20:18:07
关于FormData XMLHttpRequest Level 2添加了一个新的接口FormData.利用FormData对象,我们可以通过JavaScript用一些键值对来模拟一系列表单控件,我们还可以使用XMLHttpRequest的send()方法来异步的提交这个"表单".比起普通的ajax,使用FormData的最大优点就是我们可以 异步上传一个二进制文件 . 所有主流浏览器的较新版本都已经支持这个对象了,比如Chrome 7+、Firefox 4+、IE 10+、Opera 12+、Safari 5+。 用处 上传文件的格式一般是 base64格式 new FormData (ios,andorid只支持FormData 却不支持base64) 网上通俗的教程 通过传统的form表单提交的方式上传文件: <form id= "uploadForm" action= "http://localhost:8080/cfJAX_RS/rest/file/upload" method= "post" enctype ="multipart/form-data"> <h1 >测试通过Rest接口上传文件 </h1> <p >指定文件名: <input type ="text" name="filename" /></p> <p >上传文件: <input type ="file"

文件上传的几个 - 示例

偶尔善良 提交于 2020-02-27 03:39:13
本篇将要和朋友们分享的是几个上传文件的例子和逻辑步奏及自定义个简单的js上传插件我取名为 shenniu.upfile-0.0.1.js ;近来在讨论组中很有几个朋友咨询上传文件的代码和怎么下载上传的文件,所以写了此篇文章,希望能为朋友们解答一些疑惑或能带来帮助,也谢谢各位多多支持点赞。 以上是个人的看法,下面来正式分享今天的文章吧: . 使用iis发布保存上传文件的文件夹 . 示例A - 普通表单上传文件,Request.Files获取上传文件 . 示例B - 普通表单上传文件,HttpPostedFileBase获取上传文件 . 示例C - ajax+FormData上传文件,Request.Files获取上传文件 . 示例D - 自定义上传插件,Request.Files获取上传文件并提交表单内容 下面一步一个脚印的来分享: . 使用iis发布保存上传文件的文件夹 首先,因为我们上传文件后,需要查看或者下载这个文件,通常分为两种形式;一种把上传的文件上传到程序的根目录中的某个文件夹中,这种就可以直接通过站点的虚拟路径来访问,这种其实也是使用了iis发布的;第二种是通过程序上传到服务器的某个磁盘中,这种路径通常就不在上传程序站点的目录下,因为想让用户通过其他的url地址访问下载文件,iis发布只是其中一种;其实用iss发布保存上传文件的文件夹和发布程序一样差不多;

js 上传文件模拟Form 表单

£可爱£侵袭症+ 提交于 2020-02-02 14:35:21
使用FormData对象 在本文章中 创建一个FormData对象 使用HTML表单来初始化一个FormData对象 使用FormData对象发送文件 利用 FormData 对象,你可以使用一系列的键值对来模拟一个完整的表单,然后使用 XMLHttpRequest 发送这个"表单". 创建一个FormData对象 你可以先创建一个空的 FormData 对象,然后使用 append() 方法向该对象里添加字段,如下: var oMyForm = new FormData(); oMyForm.append("username", "Groucho"); oMyForm.append("accountnum", 123456); // 数字123456被立即转换成字符串"123456" // fileInputElement中已经包含了用户所选择的文件 oMyForm.append("userfile", fileInputElement.files[0]); var oFileBody = '<a id="a"><b id="b">hey!</b></a>'; // Blob对象包含的文件内容 var oBlob = new Blob([oFileBody], { type: "text/xml"}); oMyForm.append("webmasterfile", oBlob)

ajax上传文件

我怕爱的太早我们不能终老 提交于 2020-01-24 10:38:23
$('#submit').click(function () { var formData = new FormData(); formData.append("file",$('#file')[0].files[0]); formData.append("pid", $.trim($('#pid').val())); $.ajax({ url:'${ctx}/vegetable/market/tree/leading', dataType:'json', type:'POST', async: false, data: formData, processData : false, // 使数据不做处理 contentType : false, // 不要设置Content-Type请求头 success: function(data){ alert(data.message); if (data.status == "true") { window.location.reload(); } }, error:function(response){ console.log(response); } }); }) 来源: CSDN 作者: JAVA探索 链接: https://blog.csdn.net/top_explore/article/details/103826289

axios上传文件

↘锁芯ラ 提交于 2020-01-11 19:02:42
axios上传文件 let formData = new FormData ( ) formData . append ( 'file' , e . target . files [ 0 ] ) this . $axios ( { url : '接口地址' , method : "POST" , data : formData , headers : { 'Content-Type' : 'multipart/form-data' , 'Authorization' : this . token , 'X-Requested-With' : 'XMLHttpRequest' } , processData : false , contentType : false , //原生获取上传进度的事件 // onUploadProgress:function(progressEvent){ // var complete = Math.floor(progressEvent.loaded / progressEvent.total) // } } ) . then ( res => { console . log ( res ) } ) . catch ( err => { console . log ( err ) } ) 来源: CSDN 作者: qq_34096214 链接:

Ajax通过FormData上传文件

笑着哭i 提交于 2019-12-26 00:45:12
<!DOCTYPE> <html> <head> <meta charset="UTF-8"> <title> formdata file jquery ajax upload</title> </head> <body> <form id="uploadForm" enctype="multipart/form-data"> <input id="file" type="file" name="file"/> <button id="upload" type="button">upload</button> </form> <script src="jquery-1.9.1.min.js"></script> <script type="text/javascript"> var btn=$('#upload'); btn.click(function () { $.ajax({ url: '/ls/Upfile', type: 'POST', cache: false,// cache设置为false,上传文件不需要缓存。 data: new FormData($('#uploadForm')[0]), processData: false,//processData设置为false。因为data值是FormData对象,不需要对数据做处理。 contentType:

Ajax通过FormData上传文件

痴心易碎 提交于 2019-12-26 00:44:38
1.使用<form>表单初始化FormData对象方式上传文件 HTML代码 <form id="uploadForm" enctype="multipart/form-data"> <input id="file" type="file" name="file"/> <button id="upload" type="button">upload</button> </form> javascript代码 $.ajax({ url: '/upload', type: 'POST', cache: false, data: new FormData($('#uploadForm')[0]), processData: false, contentType: false }).done(function(res) { }).fail(function(res) {}); 这里要注意几点: processData 设置为 false 。因为 data 值是 FormData 对象,不需要对数据做处理。 <form> 标签添加 enctype="multipart/form-data" 属性。 cache 设置为 false ,上传文件不需要缓存。 contentType 设置为 false,不设置contentType值, 因为是由 <form> 表单构造的 FormData 对象

formData 通过ajax模拟表单上传

一曲冷凌霜 提交于 2019-12-06 11:44:18
  ajax 模拟form表单上传文件    let formData = new FormData()   formData.append("上传文件字段",上传的文件)   cach:false 不适用缓存   procesData:false 阻止二次封装   contentType:false    ajax默认json文件(关闭原有方式)   上传formData 只能用post(因为文件大) 来源: https://www.cnblogs.com/xuedong1103/p/11980961.html

Ajax上传文件

早过忘川 提交于 2019-12-05 12:11:28
在前端页面中写入 <form> #用不用form没关系,这里就是个盒子的作用,一般写form标签是为了提示别人,这个地方的内容是要提交的       {% csrf_token %} 用户名 <input type="text" id="user"> 头像 <input type="file" id="avatar"> <input type="button" id="ajax-submit" value="ajax-submit"> </form> <script> $("#ajax-submit").click(function(){ var formdata=new FormData(); #ajax上传文件的时候,需要这个类型,它会将添加给它的键值对加工成formdata的类型 formdata.append("user",$("#user").val()); #添加键值的方法是append,注意写法,键和值之间是逗号      formData.append("csrfmiddlewaretoken", $("[name='csrfmiddlewaretoken']").val()); #别忘了csrf_token formdata.append("avatar_img",$("#avatar")[0].files[0]); $.ajax({ url:"", type: