表單上傳:
<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>
要點(diǎn):
method="post": 采用post方式提交數(shù)據(jù)
enctype="multipart/form- data":采用multipart格式上傳文件,此時(shí)request頭會(huì)顯示?Content-Type:multipart/form-data; boundary=—-WebKitFormBoundaryzr34cwJ67R95KQC9
action:標(biāo)明上傳的服務(wù)端處理地址
type="file":使用input的file控件上傳
Ajax無刷新上傳:
提交數(shù)據(jù)時(shí),用到了FormData對(duì)象來發(fā)送二進(jìn)制文件狰晚,F(xiàn)ormData構(gòu)造函數(shù)提供的append()方法遏插,除了直接添加二進(jìn)制文件還可以附帶一些其它的參數(shù)
ajax請(qǐng)求記得加這幾個(gè)參數(shù)??
cache:false,
processData:false,
contentType:false,
//通過FormData構(gòu)造函數(shù)創(chuàng)建一個(gè)空對(duì)象
var formdata=newFormData();
//可以通過append()方法來追加數(shù)據(jù)
.append("name","laotie");
//通過get方法對(duì)值進(jìn)行讀取
console.log(formdata.get("name"));
//通過set方法對(duì)值進(jìn)行設(shè)置
formdata.set("name","laoliu");
Ajax請(qǐng)求必須要寫:
processData:false,
contentType:false,