程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> ajax-web文件上傳問題如何利用xmlHttpRequest對象上傳大文件(1G或以上)

ajax-web文件上傳問題如何利用xmlHttpRequest對象上傳大文件(1G或以上)

編輯:編程綜合問答
web文件上傳問題如何利用xmlHttpRequest對象上傳大文件(1G或以上)

如題,本人小白一名,在學習實現一個資源共享系統,涉及到很多1GB以上的文件,查閱了很多資料,發現可以用ajax實現,步驟如下:
1.通過javascript獲取文件對象
2.利用slice將文件切割成小片
3.利用xmlhttprequest的send方法將片發送給處理程序
4.php處理程序將文件拼接
於是動手模擬了一下,可是總是沒有該有的效果,求大神指導,謝謝!
文件上傳端test.php代碼如下:

圖片說明
圖片說明
處理端代碼如下
圖片說明

最佳回答:


什麼浏覽器?IE9-不支持HTML5的FormData對象,要用IE10+以上,chrome,firefox這種浏覽器才行

                while(begin < size) {
                    var blob = upfile.slice(begin, end);
                    data.append('files', blob);
                    //建立連接
                    xhr.open('POST', '1.php', false);//這裡要改成同步,要不同時發送ajax請求無法控制請求的次序,你服務器端就不好串接數據
                    //發送數據
                    xhr.send(data);
                    document.getElementById('progress').value = (end / size) * 100;
                    begin = end;
                    end = begin + blob_size;
                    //document.write(xhr.responseText);//要去掉或者注釋掉這句,要不會導致文檔流被覆蓋
                }
u013022149
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved