- 提共瀏覽器等待下載 , 非同步方式 參考網址 參考網址 參考網址
- AJAX端
- 將表單資料傳送給server
- 回傳型態會json
- 接到res.content的Base64內容須再做一次轉換動作base64ToArrayBuffer()
- 建立blob物件
- 下載視窗出現
- window.atob() 方法 , IE9以下不支援***
- 範例使用chrome瀏覽器可正常運行 , 如是以下瀏覽器需做修改
- IE10+
- var canvas = document.createElement("canvas");
- if ('msToBlob' in canvas) {
- navigator.msSaveBlob(_blob, _filename);
- }
- FireFox
- document.body.appendChild(a);
- a.click();
- document.body.removeChild(a);
- Server端 ( Action )
- 已先將檔案準備好
- 開始讀取檔案
- 將檔案串流轉換為Base64編碼
- PrintWriter 回傳JSON物件給Client接收