multipart/form-data(二進制流) 兩種傳輸方式 以及 關於ios對 new FormData 兼容問題


一、傳統表單提交傳輸方式

<form id= "uploadForm" action= "url" method= "post" enctype ="multipart/form-data">    
     <h1 >測試通過Rest接口上傳文件 </h1>     
     <p >上傳文件: <input type ="file" name="file" /></p>    
     <p >關鍵字1: <input type ="text" name="keyword" /></p>  
     <input type ="submit" value="上傳"/>    
</form>   

二、ajax提交方式傳輸 (注意紅色字體區域 -- 設置enctype)

<form id="uploadForm" enctype="multipart/form-data">
    <input id="file" type="file" name="file"/>
    <button id="upload" type="button">upload</button>
</form>

<script>
$('#upload').click(function(){
  $.ajax({
      url: 'upload',
      type: 'POST',
      cache: false,
      data: new FormData($('#uploadForm')[0]),
      processData: false, // 不進行數據處理
      contentType: false  
  }).done(function(res) {
  }).fail(function(res) {});
  });
</script>  

 三、關於ios對 new FormData 兼容

蘋果部分機型(如iphone6),new FormData 無法使用set/get方法,只能使用append方法設置值。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM