基于異步傳輸方式的文件上傳方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及文件上傳方法及系統(tǒng),更具體地,涉及基于異步傳輸方式的文件上傳方法及系統(tǒng)。
【背景技術(shù)】
[0002]目前,隨著計(jì)算機(jī)和網(wǎng)絡(luò)應(yīng)用的日益廣泛以及不同領(lǐng)域的業(yè)務(wù)種類的日益豐富,通過(guò)瀏覽器經(jīng)由互聯(lián)網(wǎng)向服務(wù)器上傳文件變得越來(lái)越重要。
[0003]在現(xiàn)有的技術(shù)方案中,通常采用同步方式上傳文件,其基本過(guò)程如下:用戶通過(guò)瀏覽器中的網(wǎng)頁(yè)選擇文件并將其上傳至服務(wù)器,隨之該網(wǎng)頁(yè)被鎖定,直至服務(wù)器在接收并處理完成所上傳的文件后返回響應(yīng)結(jié)果。
[0004]然而,上述現(xiàn)有的技術(shù)方案存在如下問(wèn)題:由于服務(wù)器接收和處理上傳文件所需的時(shí)間較長(zhǎng),在此期間用戶不能進(jìn)行任何其他操作,故系統(tǒng)效率較低,此外,在現(xiàn)有的機(jī)制下難于實(shí)現(xiàn)文件的批量處理以及文件格式的靈活解析。
[0005]因此,存在如下需求:提供能夠基于異步方式進(jìn)行文件上傳并且能夠?qū)崿F(xiàn)文件的批量處理以及文件格式的靈活解析的基于異步傳輸方式的文件上傳方法及系統(tǒng)。
【發(fā)明內(nèi)容】
[0006]為了解決上述現(xiàn)有技術(shù)方案所存在的問(wèn)題,本發(fā)明提出了能夠基于異步方式進(jìn)行文件上傳并且能夠?qū)崿F(xiàn)文件的批量處理以及文件格式的靈活解析的基于異步傳輸方式的文件上傳方法及系統(tǒng)。
[0007]本發(fā)明的目的是通過(guò)以下技術(shù)方案實(shí)現(xiàn)的:
一種基于異步傳輸方式的文件上傳方法,所述基于異步傳輸方式的文件上傳方法包括下列步驟:
(Al)當(dāng)根據(jù)用戶指令需要將文件上傳至服務(wù)器時(shí),瀏覽器調(diào)用與該瀏覽器相關(guān)聯(lián)的文件上傳裝置提供的接口將待上傳文件傳遞至所述文件上傳裝置,并能夠繼續(xù)響應(yīng)用戶隨后的指令;
(A2)所述文件上傳裝置接管針對(duì)所述待上傳文件的后續(xù)上傳任務(wù),并以常規(guī)的同步方式將所述待上傳文件傳送到服務(wù)器;
(A3)所述服務(wù)器接收并處理所述待上傳文件,并且在所述接收和處理完成后向所述文件上傳裝置傳送回響應(yīng)結(jié)果;
(A4)所述文件上傳裝置將所述響應(yīng)結(jié)果傳遞回所述瀏覽器以供后續(xù)處理。
[0008]在上面所公開的方案中,優(yōu)選地,所述文件上傳裝置以及其所執(zhí)行的文件上傳過(guò)程在所述瀏覽器的頁(yè)面上不可見,并且在以常規(guī)的同步方式將所述待上傳文件傳送到服務(wù)器時(shí)將其自身標(biāo)記為響應(yīng)結(jié)果接收方。
[0009]在上面所公開的方案中,優(yōu)選地,所述文件上傳裝置以如下方式將所述響應(yīng)結(jié)果傳遞回所述瀏覽器:在接收到所述響應(yīng)結(jié)果后自動(dòng)觸發(fā)回調(diào)函數(shù),所述回調(diào)函數(shù)隨之將所述響應(yīng)結(jié)果傳遞回所述瀏覽器。
[0010]在上面所公開的方案中,優(yōu)選地,所述回調(diào)函數(shù)在將所述響應(yīng)結(jié)果傳遞回所述瀏覽器之前解析所述響應(yīng)結(jié)果以使之符合所述瀏覽器支持的數(shù)據(jù)類型。
[0011]在上面所公開的方案中,優(yōu)選地,所述瀏覽器能夠在文件上傳期間通過(guò)遮罩層遮罩頁(yè)面中與文件上傳相關(guān)的元素。
[0012]在上面所公開的方案中,優(yōu)選地,所述瀏覽器能夠經(jīng)由所述文件上傳裝置周期性地獲取文件上傳操作的當(dāng)前進(jìn)度,并且隨之在所述遮罩層上顯示文件上傳操作的當(dāng)前進(jìn)度。
[0013]在上面所公開的方案中,優(yōu)選地,所述文件上傳裝置傳送的文件是包含文件頭和文件體或僅包含文件體的文本文件,所述文件體和文件頭均由記錄組成,并且所述記錄由域組成,所述記錄以行為單位。
[0014]在上面所公開的方案中,優(yōu)選地,所述服務(wù)器基于文件解析規(guī)則解析接收到的文件,并且所述文件解析規(guī)則能夠根據(jù)實(shí)際需求被動(dòng)態(tài)地配置和更新。
[0015]本發(fā)明的目的也可以通過(guò)以下技術(shù)方案實(shí)現(xiàn):
一種基于異步傳輸方式的文件上傳方法,所述包括下列步驟:
(Al)當(dāng)根據(jù)用戶指令需要將文件上傳至服務(wù)器時(shí),瀏覽器調(diào)用與該瀏覽器相關(guān)聯(lián)的文件上傳裝置提供的接口將待上傳文件傳遞至所述文件上傳裝置,并能夠繼續(xù)響應(yīng)用戶隨后的指令;
(A2)所述文件上傳裝置接管針對(duì)所述待上傳文件的后續(xù)上傳任務(wù),并以常規(guī)的同步方式將所述待上傳文件傳送到服務(wù)器;
(A3)所述服務(wù)器接收所述待上傳文件,并且在所述接收完成后向所述文件上傳裝置傳送回響應(yīng)結(jié)果;
(A4)所述文件上傳裝置將所述響應(yīng)結(jié)果傳遞回所述瀏覽器以結(jié)束頁(yè)面上的上傳操作并供后續(xù)處理。
[0016]在上面所公開的方案中,優(yōu)選地,所述服務(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)域的值更新為“處理完成”。
[0017]在上面所公開的方案中,優(yōu)選地,所述瀏覽器能夠基于用戶指令查詢所述處理狀態(tài)表以獲取相關(guān)文件的處理狀態(tài)。
[0018]本發(fā)明的目的也可以通過(guò)以下技術(shù)方案實(shí)現(xiàn):
一種基于異步傳輸方式的文件上傳系統(tǒng),所述系統(tǒng)包括:
瀏覽器,所述瀏覽器能夠在需要將文件上傳至服務(wù)器時(shí)調(diào)用與該瀏覽器相關(guān)聯(lián)的文件上傳裝置提供的接口將待上傳文件傳遞至所述文件上傳裝置,并能夠繼續(xù)響應(yīng)用戶隨后的指令;
文件上傳裝置,所述文件上傳裝置在接收到所述待上傳文件后接管針對(duì)所述待上傳文件的后續(xù)上傳任務(wù),并以常規(guī)的同步方式將所述待上傳文件傳送到服務(wù)器; 服務(wù)器,所述服務(wù)器接收并處理所述待上傳文件,并且在所述接收和處理完成后向所述文件上傳裝置傳送回響應(yīng)結(jié)果。
[0019]本發(fā)明的目的也可以通過(guò)以下技術(shù)方案實(shí)現(xiàn):
一種基于異步傳輸方式的文件上傳系統(tǒng),所述系統(tǒng)包括:
瀏覽器,所述瀏覽器能夠在需要將文件上傳至服務(wù)器時(shí)調(diào)用與該瀏覽器相關(guān)聯(lián)的文件上傳裝置提供的接口將待上傳文件傳遞至所述文件上傳裝置,并能夠繼續(xù)響應(yīng)用戶隨后的指令;
文件上傳裝置,所述文件上傳裝置在接收到所述待上傳文件后接管針對(duì)所述待上傳文件的后續(xù)上傳任務(wù),并以常規(guī)的同步方式將所述待上傳文件傳送到服務(wù)器;
服務(wù)器,所述服務(wù)器在接收完成所述待上傳文件后立即向所述文件上傳裝置2傳送回響應(yīng)結(jié)果。
[0020]本發(fā)明所公開的基于異步傳輸方式的文件上傳方法及系統(tǒng)具有以下優(yōu)點(diǎn):(1)能夠基于異步方式進(jìn)行文件上傳(即在文件上傳期間頁(yè)面不被鎖定);(2)通過(guò)文件處理的延遲(即文件接收和處理相分離)而能夠?qū)崿F(xiàn)文件的批量處理;(3)通過(guò)動(dòng)態(tài)配置文件解析規(guī)則而實(shí)現(xiàn)對(duì)文件格式的靈活解析。
【附圖說(shuō)明】
[0021]結(jié)合附圖,本發(fā)明的技術(shù)特征以及優(yōu)點(diǎn)將會(huì)被本領(lǐng)域技術(shù)人員更好地理解,其中:
圖1是根據(jù)本發(fā)明的實(shí)施例的基于異步傳輸方式的文件上傳方法的流程圖;
圖2是根據(jù)本發(fā)明的實(shí)施例的基于異步傳輸方式的文件上傳系統(tǒng)的示意性結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0022]圖1是根據(jù)本發(fā)明的實(shí)施例的基于異步傳輸方式的文件上傳方法的流程圖。如圖1所示,本發(fā)明所公開的基于異步傳輸方式的文件上傳方法的第一實(shí)施例包括下列步驟:(Al)當(dāng)根據(jù)用戶指令需要將文件上傳至服務(wù)器時(shí),瀏覽器調(diào)用與該瀏覽器相關(guān)聯(lián)的文件上傳裝置提供的接口將待上傳文件傳遞至所述文件上傳裝置,并能夠繼續(xù)響應(yīng)用戶隨后的指令(即不會(huì)導(dǎo)致當(dāng)前頁(yè)面的刷新操作);(A2)所述文件上傳裝置接管針對(duì)所述待上傳文件的后續(xù)上傳任務(wù),并以常規(guī)的同步方式將所述待上傳文件傳送到服務(wù)器;(A3)所述服務(wù)器接收并處理所述待上傳文件,并且在所述接收和處理完成后向所述文件上傳裝置傳送回響應(yīng)結(jié)果;(A4)所述文件上傳裝置將所述響應(yīng)結(jié)果傳遞回所述瀏覽器以供后續(xù)處理(例如顯示給用戶)。
[0023]優(yōu)選地,在本發(fā)明所公開的基于異步傳輸方式的文件上傳方法的第一實(shí)施