表单上传:
<form method="post" action="http://uploadUrl" enctype="multipart/form-data">
<input name="file" type="file" accept="image/gif,image.jpg"/>
<input name="token" type="hidden"/>
<input type="submit" value="提交"/>
</form>
要点:
method="post": 采用post方式提交数据
enctype="multipart/form- data":采用multipart格式上传文件,此时request头会显示 Content-Type:multipart/form-data; boundary=—-WebKitFormBoundaryzr34cwJ67R95KQC9
action:标明上传的服务端处理地址
type="file":使用input的file控件上传
Ajax无刷新上传:
提交数据时,用到了FormData对象来发送二进制文件,FormData构造函数提供的append()方法,除了直接添加二进制文件还可以附带一些其它的参数
ajax请求记得加这几个参数
cache:false,
processData:false,
contentType:false,
//通过FormData构造函数创建一个空对象
var formdata=newFormData();
//可以通过append()方法来追加数据
.append("name","laotie");
//通过get方法对值进行读取
console.log(formdata.get("name"));
//通过set方法对值进行设置
formdata.set("name","laoliu");
Ajax请求必须要写:
processData:false,
contentType:false,
网友评论