例中,所述文件上傳裝置以及其所執(zhí)行的文件上傳過程在所述瀏覽器的頁面上不可見,并且在以常規(guī)的同步方式將所述待上傳文件傳送到服務(wù)器時(shí)將其自身標(biāo)記為響應(yīng)結(jié)果接收方。
[0024]示例性地,在本發(fā)明所公開的基于異步傳輸方式的文件上傳方法的第一實(shí)施例中,所述文件上傳裝置是javascript組件,并且以form表單的形式將所述待上傳文件傳送至服務(wù)器。
[0025]優(yōu)選地,在本發(fā)明所公開的基于異步傳輸方式的文件上傳方法的第一實(shí)施例中,所述文件上傳裝置以如下方式將所述響應(yīng)結(jié)果傳遞回所述瀏覽器:在接收到所述響應(yīng)結(jié)果后自動(dòng)觸發(fā)回調(diào)函數(shù),所述回調(diào)函數(shù)隨之將所述響應(yīng)結(jié)果傳遞回所述瀏覽器。
[0026]優(yōu)選地,在本發(fā)明所公開的基于異步傳輸方式的文件上傳方法的第一實(shí)施例中,所述回調(diào)函數(shù)在將所述響應(yīng)結(jié)果傳遞回所述瀏覽器之前解析所述響應(yīng)結(jié)果以使之符合所述瀏覽器支持的數(shù)據(jù)類型。
[0027]示例性地,在本發(fā)明所公開的基于異步傳輸方式的文件上傳方法的第一實(shí)施例中,所述數(shù)據(jù)類型包括但不限于:json類型、XML類型、HTML類型。
[0028]優(yōu)選地,在本發(fā)明所公開的基于異步傳輸方式的文件上傳方法的第一實(shí)施例中,所述瀏覽器能夠在文件上傳期間(即在用戶觸發(fā)文件上傳操作時(shí)啟動(dòng)并在文件上傳操作結(jié)束后關(guān)閉)通過遮罩層遮罩頁面中與文件上傳相關(guān)的元素(例如按鈕,文本框等等)。
[0029]優(yōu)選地,在本發(fā)明所公開的基于異步傳輸方式的文件上傳方法的第一實(shí)施例中,所述瀏覽器能夠經(jīng)由所述文件上傳裝置周期性地獲取文件上傳操作的當(dāng)前進(jìn)度,并且隨之在所述遮罩層上顯示文件上傳操作的當(dāng)前進(jìn)度。
[0030]優(yōu)選地,在本發(fā)明所公開的基于異步傳輸方式的文件上傳方法的第一實(shí)施例中,所述文件上傳裝置傳送的文件是包含文件頭和文件體或僅包含文件體的文本文件,所述文件體和文件頭均由記錄組成,并且所述記錄由域(即字段)組成,所述記錄以行為單位(即文本中的一行構(gòu)成一個(gè)記錄)。
[0031]優(yōu)選地,在本發(fā)明所公開的基于異步傳輸方式的文件上傳方法的第一實(shí)施例中,所述服務(wù)器基于文件解析規(guī)則解析接收到的文件,并且所述文件解析規(guī)則能夠根據(jù)實(shí)際需求被動(dòng)態(tài)地配置和更新。
[0032]本發(fā)明所公開的基于異步傳輸方式的文件上傳方法的第二實(shí)施例包括下列步驟:(Al)當(dāng)根據(jù)用戶指令需要將文件上傳至服務(wù)器時(shí),瀏覽器調(diào)用與該瀏覽器相關(guān)聯(lián)的文件上傳裝置提供的接口將待上傳文件傳遞至所述文件上傳裝置,并能夠繼續(xù)響應(yīng)用戶隨后的指令(即不會(huì)導(dǎo)致當(dāng)前頁面的刷新操作);(A2)所述文件上傳裝置接管針對(duì)所述待上傳文件的后續(xù)上傳任務(wù),并以常規(guī)的同步方式將所述待上傳文件傳送到服務(wù)器;(A3)所述服務(wù)器接收所述待上傳文件,并且在所述接收完成后向所述文件上傳裝置傳送回響應(yīng)結(jié)果;(A4)所述文件上傳裝置將所述響應(yīng)結(jié)果傳遞回所述瀏覽器以結(jié)束頁面上的上傳操作(從而縮短頁面上的文件上傳操作時(shí)間)并供后續(xù)處理(例如將響應(yīng)結(jié)果顯示給用戶)。
[0033]優(yōu)選地,在本發(fā)明所公開的基于異步傳輸方式的文件上傳方法的第二實(shí)施例中,所述服務(wù)器在接收完所述待上傳文件并且向所述文件上傳裝置傳送回響應(yīng)結(jié)果后處理所述文件,并且將處理狀態(tài)存儲(chǔ)在處理狀態(tài)表中,其中,所述處理狀態(tài)表中的每個(gè)記錄對(duì)應(yīng)于一個(gè)文件,并且所述服務(wù)器在接收完成一個(gè)文件后創(chuàng)建與該文件相關(guān)聯(lián)的記錄,并將該記錄的狀態(tài)域的值更新為“已上傳”,在處理該文件期間,將該記錄的狀態(tài)域的值更新為“處理中”,以及在該文件處理完畢后將該記錄的狀態(tài)域的值更新為“處理完成”。
[0034]優(yōu)選地,在本發(fā)明所公開的基于異步傳輸方式的文件上傳方法的第二實(shí)施例中,所述瀏覽器能夠基于用戶指令查詢所述處理狀態(tài)表以獲取相關(guān)文件的處理狀態(tài)。
[0035]本發(fā)明所公開的基于異步傳輸方式的文件上傳方法的第二實(shí)施例在其他方面與上面所描述的第一實(shí)施例相同,在此不再贅述。
[0036]由上可見,本發(fā)明所公開的基于異步傳輸方式的文件上傳方法具有下列優(yōu)點(diǎn):(I)能夠基于異步方式進(jìn)行文件上傳(即在文件上傳期間頁面不被鎖定);(2 )通過文件處理的延遲(即文件接收和處理相分離)而能夠?qū)崿F(xiàn)文件的批量處理;(3)通過動(dòng)態(tài)配置文件解析規(guī)則而實(shí)現(xiàn)對(duì)文件格式的靈活解析。
[0037]圖2是根據(jù)本發(fā)明的實(shí)施例的基于異步傳輸方式的文件上傳系統(tǒng)的示意性結(jié)構(gòu)圖。如圖2所示,本發(fā)明所公開的基于異步傳輸方式的文件上傳系統(tǒng)的第一實(shí)施例包括瀏覽器1、文件上傳裝置2以及服務(wù)器3。所述瀏覽器I能夠在需要將文件上傳至服務(wù)器時(shí)調(diào)用與該瀏覽器相關(guān)聯(lián)的文件上傳裝置2提供的接口將待上傳文件傳遞至所述文件上傳裝置2,并能夠繼續(xù)響應(yīng)用戶隨后的指令(即不會(huì)導(dǎo)致當(dāng)前頁面的刷新操作)。所述文件上傳裝置2在接收到所述待上傳文件后接管針對(duì)所述待上傳文件的后續(xù)上傳任務(wù),并以常規(guī)的同步方式將所述待上傳文件傳送到服務(wù)器3。所述服務(wù)器3接收并處理所述待上傳文件,并且在所述接收和處理完成后向所述文件上傳裝置2傳送回響應(yīng)結(jié)果。
[0038]優(yōu)選地,在本發(fā)明所公開的基于異步傳輸方式的文件上傳系統(tǒng)的第一實(shí)施例中,所述文件上傳裝置2在接收到所述響應(yīng)結(jié)果后將其傳遞回所述瀏覽器I。
[0039]優(yōu)選地,在本發(fā)明所公開的基于異步傳輸方式的文件上傳系統(tǒng)的第一實(shí)施例中,所述瀏覽器I還能夠接收所述文件上傳裝置2傳遞回的所述響應(yīng)結(jié)果并對(duì)其進(jìn)行相應(yīng)的后續(xù)處理(例如顯示給用戶)。
[0040]優(yōu)選地,在本發(fā)明所公開的基于異步傳輸方式的文件上傳系統(tǒng)的第一實(shí)施例中,所述文件上傳裝置2以及其所執(zhí)行的文件上傳過程在所述瀏覽器I的頁面上不可見,并且在以常規(guī)的同步方式將所述待上傳文件傳送到服務(wù)器3時(shí)將其自身標(biāo)記為響應(yīng)結(jié)果接收方。
[0041]示例性地,在本發(fā)明所公開的基于異步傳輸方式的文件上傳系統(tǒng)的第一實(shí)施例中,所述文件上傳裝置2是javascript組件,并且以form表單的形式將所述待上傳文件傳送至服務(wù)器3。
[0042]優(yōu)選地,在本發(fā)明所公開的基于異步傳輸方式的文件上傳系統(tǒng)的第一實(shí)施例中,所述文件上傳裝置2以如下方式將所述響應(yīng)結(jié)果傳遞回所述瀏覽器1:在接收到所述響應(yīng)結(jié)果后自動(dòng)觸發(fā)回調(diào)函數(shù),所述回調(diào)函數(shù)隨之將所述響應(yīng)結(jié)果傳遞回所述瀏覽器I。
[0043]優(yōu)選地,在本發(fā)明所公開的基于異步傳輸方式的文件上傳系統(tǒng)的第一實(shí)施例中,所述回調(diào)函數(shù)在將所述響應(yīng)結(jié)果傳遞回所述瀏覽器I之前解析所述響應(yīng)結(jié)果以使之符合所述瀏覽器I支持的數(shù)據(jù)類型。
[0044]示例性地,在本發(fā)明所公開的基于異步傳輸方式的文件上傳系統(tǒng)的第一實(shí)施例中,所述數(shù)據(jù)類型包括但不限于:json類型、XML類型、HTML類型。
[0045]優(yōu)選地,在本發(fā)明所公開的基于異步傳輸方式的文件上傳系統(tǒng)的第一實(shí)施例中,所述瀏覽器I能夠在文件上傳期間(即在用戶觸發(fā)文件上傳操作時(shí)啟動(dòng)并在文件上傳操作結(jié)束后關(guān)閉)通過遮罩層遮罩頁面中與文件上傳相關(guān)的元素(例如按鈕,文本框等等)。
[0046]優(yōu)選地,在本發(fā)明所公開的基于異步傳輸方式的文件上傳系統(tǒng)的第一實(shí)施例中,所述瀏覽器I能夠經(jīng)由所述文件上傳裝置2周期性地獲取文件上傳操作的當(dāng)前進(jìn)度,并且隨之在所述遮罩層上顯示文件上傳操作的當(dāng)前進(jìn)度。
[0047]優(yōu)選地,在本發(fā)明所公開的基于異步傳輸方式的文件上傳系統(tǒng)的第一實(shí)施例中,所述文件上傳裝置2傳送的文件是包含文件頭和文件體或僅包含文件體的文本文件,所述文件體和文件頭均由記錄組成,并且所述記錄由域(即字段)組成,所述記錄以行為單位(即文本中的一行構(gòu)成一個(gè)記錄)。
[0048]優(yōu)選地,在本發(fā)明所公開的基于異步傳輸方式的文件上傳系統(tǒng)的第一實(shí)施例中,所述服務(wù)器3基于文件解析規(guī)則解析接收到的文件,并且所述文件解析規(guī)則能夠根據(jù)實(shí)際需求被動(dòng)態(tài)地配置和更新。
[0049]如圖2所示,本發(fā)明所公開的基于異步傳輸方式的文件上傳系統(tǒng)的第二實(shí)施例包括瀏覽器1、文件上傳裝置2以及服務(wù)器3。所述瀏覽器I能夠在需要將文件