文件上傳方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開(kāi)了一種文件上傳方法,包括以下步驟:在客戶端的瀏覽器上顯示上傳頁(yè)面;判斷客戶端的瀏覽器上是否安裝有上傳插件;若客戶端的瀏覽器上沒(méi)有安裝上傳插件,則安裝上傳插件;若客戶端的瀏覽器上已經(jīng)安裝了上傳插件,在上傳頁(yè)面上選擇需要上傳的文件,并將選擇的文件加入到上傳隊(duì)列中;從上傳隊(duì)列中獲取一個(gè)文件;及上傳獲取的文件。在安裝了上傳插件以后,所述客戶端的瀏覽器就可以通過(guò)所述上傳插件來(lái)建立與所述服務(wù)器之間的連接,解決了客戶端上的瀏覽器本身不支持上傳超過(guò)2G的大文件的問(wèn)題。另,本發(fā)明還是公開(kāi)了一種文件上傳系統(tǒng)。
【專利說(shuō)明】文件上傳方法及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種文件上傳技術(shù),尤其涉及一種基于瀏覽器的文件上傳方法及系統(tǒng)。
【背景技術(shù)】
[0002]隨著互聯(lián)網(wǎng)快速的發(fā)展隨著互聯(lián)網(wǎng)快速發(fā)展,互聯(lián)網(wǎng)的應(yīng)用越來(lái)越豐富,大部分的網(wǎng)站都提供了上傳文件的服務(wù),比如郵箱的附件上傳,圖片上傳?,F(xiàn)有的文件的上傳方法,其通過(guò)瀏覽器直接上傳,其上傳步驟為:(1)用戶選擇需要上傳的文件;(2)瀏覽器取得文件信息傳給服務(wù)器;(3)服務(wù)器處理上傳的文件。在這種處理方式下,瀏覽器只能上傳小于2G的小文件,而無(wú)法上傳超過(guò)2G的大文件。
【發(fā)明內(nèi)容】
[0003]為了解決現(xiàn)在的瀏覽器不支持上傳超過(guò)2G的大文件的問(wèn)題,本發(fā)明提供一種新的方法,能夠通過(guò)文件上傳系統(tǒng)使用戶通過(guò)瀏覽器直接上傳超過(guò)2G的大文件,從而解決了瀏覽器不支持上傳超過(guò)2G的大文件的問(wèn)題。
[0004]一種文件上傳方法,包括以下步驟:
在客戶端的瀏覽器上顯示上傳頁(yè)面;
判斷所述客戶端的瀏覽器上是否安裝有上傳插件;
若所述客戶端的瀏覽器上沒(méi)有安裝所述上傳插件,則安裝所述上傳插件;
若所述客戶端的瀏覽器上已經(jīng)安裝了所述上傳插件,在所述上傳頁(yè)面上選擇需要上傳的文件,并將選擇的文件加入到上傳隊(duì)列中;
從上傳隊(duì)列中獲取一個(gè)文件;及 上傳獲取的文件。
[0005]本發(fā)明實(shí)施例還提供一種文件上傳系統(tǒng),運(yùn)行于客戶端及服務(wù)器中,其包括:
顯示模塊,用于在客戶端的瀏覽器上顯示上傳頁(yè)面;
判斷模塊,用于判斷所述客戶端的瀏覽器上是否安裝有上傳插件,若所述客戶端的瀏覽器上沒(méi)有安裝所述上傳插件,則安裝所述上傳插件;
選擇模塊,若所述客戶端的瀏覽器上已經(jīng)安裝了所述上傳插件,在所述上傳頁(yè)面上選擇需要上傳的文件,并將選擇的文件加入到上傳隊(duì)列中;
獲取模塊,用于從上傳隊(duì)列中獲取一個(gè)文件;及 上傳模塊,用于上傳獲取的文件。
[0006]本發(fā)明的上述實(shí)施例中,由于具有判斷步驟或判斷模塊,可以自動(dòng)判斷客戶端的瀏覽器上是否安裝了上傳插件,如果沒(méi)有安裝上傳插件,則立即安裝,在安裝了上傳插件以后,所述客戶端的瀏覽器就可以通過(guò)所述上傳插件來(lái)建立與所述服務(wù)器之間的連接,解決了客戶端上的瀏覽器本身不支持上傳超過(guò)2G的大文件的問(wèn)題。而且由于上傳插件可以在后臺(tái)運(yùn)行,不會(huì)一直停留在當(dāng)面的上傳頁(yè)面,因此,前臺(tái)的瀏覽器還可以做其他操作,給用戶的使用帶來(lái)很大的便利。
【專利附圖】
【附圖說(shuō)明】
[0007]為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0008]圖1是本發(fā)明客戶端與服務(wù)器的網(wǎng)絡(luò)架構(gòu)圖。
[0009]圖2是本發(fā)明實(shí)施例提供的文件上傳系統(tǒng)的功能模塊圖。
[0010]圖3是本發(fā)明實(shí)施例提供的文件上傳方法的流程圖。
具體實(shí)施例
[0011]下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明的技術(shù)方案作進(jìn)一步更詳細(xì)的描述。顯然,所描述的實(shí)施例僅僅是本發(fā)明的一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)的前提下所獲得的所有其他實(shí)施例,都應(yīng)屬于本發(fā)明保護(hù)的范圍。
[0012]如圖1所示,是本發(fā)明客戶端與服務(wù)器的網(wǎng)絡(luò)架構(gòu)圖。在本實(shí)施例中,所述客戶端100通過(guò)網(wǎng)絡(luò)200與所述服務(wù)器300連接。所述客戶端100可以為筆記本電腦、計(jì)算機(jī)或便攜式移動(dòng)終端等。所述服務(wù)器300通過(guò)數(shù)據(jù)庫(kù)連接與數(shù)據(jù)庫(kù)400連接,所述數(shù)據(jù)庫(kù)連接可以是 JDBC (Java Database Connectivity, Java 數(shù)據(jù)庫(kù)連接)或 ODBC (Open DatabaseConnectivity,開(kāi)放數(shù)據(jù)庫(kù)連接)等。文件上傳系統(tǒng)10安裝于所述客戶端100及所述服務(wù)器300中。
[0013]如圖2所示,是本發(fā)明實(shí)施例提供的文件上傳系統(tǒng)的功能模塊圖。該文件上傳系統(tǒng)10包括顯示模塊11、判斷模塊12、選擇模塊13、獲取模塊14、輸出模塊15、檢測(cè)模塊16及上傳模塊17。其中所述顯示模塊11、所述判斷模塊12、所述選擇模塊13、所述獲取模塊14及所述上傳模塊17應(yīng)用于所述客戶端100中,所述檢測(cè)模塊16應(yīng)用于所述服務(wù)器300中。
[0014]所述顯示模塊11用于在客戶端100的瀏覽器上顯示上傳頁(yè)面。具體地,所述顯示模塊11為一個(gè)網(wǎng)頁(yè),向用戶顯示上傳文件的界面,用戶在頁(yè)面上進(jìn)行上傳文件的操作。
[0015]所述判斷模塊12用于判斷所述客戶端100的瀏覽器上是否安裝有上傳插件。若所述客戶端100的瀏覽器上沒(méi)有安裝所述上傳插件,則會(huì)出現(xiàn)頁(yè)面提醒進(jìn)行安裝上傳插件,其中,安裝所述上傳插件的過(guò)程與安裝普通的軟件相同,僅需點(diǎn)擊下一步即可,安裝所述上傳插件后重啟所述客戶端100即可使用。若所述客戶端100的瀏覽器上已經(jīng)安裝了所述上傳插件,所述選擇模塊13用于在所述上傳頁(yè)面上選擇需要上傳的文件,并將選擇的文件加入到上傳隊(duì)列中。其中,上傳隊(duì)列的大小并沒(méi)有限制,理論上可以是無(wú)限多個(gè),但是實(shí)際會(huì)受到所述客戶端100的內(nèi)存的限制。若想同時(shí)存在很多個(gè)上傳隊(duì)列,只需要保證所述客戶端100有足夠的內(nèi)存空間即可。
[0016]所述獲取模塊14用于從上傳隊(duì)列中獲取一個(gè)文件。
[0017]所述輸出模塊15用于提取上傳文件的信息并輸出至所述服務(wù)器300。具體在提取上傳文件的信息后可以計(jì)算出一個(gè)特定值,將所述特定值輸出至所述服務(wù)器300,以使每個(gè)特定值對(duì)應(yīng)一個(gè)上傳文件。本實(shí)施例中,所述特定值為是根據(jù)上傳文件的數(shù)據(jù)進(jìn)行計(jì)算得到的標(biāo)識(shí)所述上傳文件的唯一值,用所述特定值可以區(qū)別不同的上傳文件,所述特定值具體表示為shal值。其中,提取上傳文件信息以及計(jì)算特定值的過(guò)程均可以通過(guò)所述上傳插件來(lái)實(shí)現(xiàn)。如此,在安裝了上傳插件以后,所述客戶端100的瀏覽器就可以通過(guò)所述上傳插件來(lái)建立與所述服務(wù)器300之間的連接,解決了客戶端100上的瀏覽器本身不支持上傳超過(guò)2G的大文件的問(wèn)題。而且由于上傳插件可以在后臺(tái)運(yùn)行,不會(huì)一直停留在當(dāng)面的上傳頁(yè)面,因此,前臺(tái)的瀏覽器還可以做其他操作,給用戶的使用帶來(lái)很大的便利。
[0018]所述檢測(cè)模塊16用于檢測(cè)由所述獲取模塊14獲取的文件是否已經(jīng)在所述服務(wù)器300中存在。在實(shí)際應(yīng)用中,該檢測(cè)模塊16可以具體通過(guò)php腳本來(lái)實(shí)現(xiàn)。具體地,所述服務(wù)器300根據(jù)文件的信息即特定值在所述數(shù)據(jù)庫(kù)400中查詢是否有所述獲取的文件。若所述獲取的文件在所述服務(wù)器300中存在,則直接提示用戶上傳完成,再繼續(xù)從上傳隊(duì)列中獲取下一個(gè)文件,直到將上傳隊(duì)列中不存在文件,則上傳完成。如此,對(duì)于已經(jīng)存在于所述服務(wù)器300中的文件則不會(huì)再重復(fù)上傳,而是直接提示用戶上傳完成,提高了上傳速率,達(dá)到極速上傳的效果,并且避免了所述服務(wù)器300中出現(xiàn)冗余的文件,節(jié)省了所述服務(wù)器300的存儲(chǔ)空間。
[0019]若所述獲取的文件在所述服務(wù)器300中不存在,則通過(guò)上傳模塊17上傳所述獲取的文件。上傳完成后,提示用戶上傳完成,并繼續(xù)從上傳隊(duì)列中獲取下一個(gè)文件,直到將上傳隊(duì)列中的文件全部上傳完成。本實(shí)施例中,在上傳文件的過(guò)程由于采用的是異步傳輸,所以瀏覽器不會(huì)出現(xiàn)超時(shí)提示,避免了由于上傳時(shí)間太久給用戶造成不便,即在所述客戶端100的頁(yè)面上用戶可以同時(shí)進(jìn)行其他操作,使用起來(lái)更方便。另外,在上傳文件后,如果用戶需要加密,則可以對(duì)文件使用DES加密算法進(jìn)行加密。
[0020]如圖3所示,是本發(fā)明實(shí)施例提供的文件上傳方法的流程圖。該文件上傳方法包括以下步驟:
步驟SlO:在客戶端100的瀏覽器上顯示上傳頁(yè)面。具體地,該步驟用于向用戶提供顯示上傳文件的界面,用戶在頁(yè)面上進(jìn)行上傳文件的操作。
[0021]步驟Sll:用于判斷所述客戶端100的瀏覽器上是否安裝有上傳插件。若所述客戶端100的瀏覽器上沒(méi)有安裝所述上傳插件,則進(jìn)入步驟S12,若所述客戶端100的瀏覽器上已經(jīng)安裝了所述上傳插件,則進(jìn)入步驟S13。
[0022]步驟S12:安裝上傳插件,其中,安裝所述上傳插件的過(guò)程與安裝普通的軟件相同,僅需點(diǎn)擊下一步即可,安裝所述上傳插件后重啟所述客戶端100即可使用。
[0023]步驟S13:在所述上傳頁(yè)面上選擇需要上傳的文件,并將選擇的文件加入到上傳隊(duì)列中。其中,上傳隊(duì)列的大小并沒(méi)有限制,理論上可以是無(wú)限多個(gè),但是實(shí)際會(huì)受到所述客戶端100的內(nèi)存的限制。若想同時(shí)存在很多個(gè)上傳隊(duì)列,只需要保證所述客戶端100有足夠的內(nèi)存空間即可。
[0024]步驟S14:從上傳隊(duì)列中獲取一個(gè)文件。
[0025]步驟S15:提取上傳文件的信息并輸出至所述服務(wù)器300。具體在提取上傳文件的信息后可以計(jì)算出一個(gè)特定值,將所述特定值輸出至所述服務(wù)器300,以使每個(gè)特定值對(duì)應(yīng)一個(gè)上傳文件。本實(shí)施例中,所述特定值為是根據(jù)上傳文件的數(shù)據(jù)進(jìn)行計(jì)算得到的標(biāo)識(shí)所述上傳文件的唯一值,用所述特定值可以區(qū)別不同的上傳文件,所述特定值具體表示為shal值。其中,提取上傳文件信息以及計(jì)算特定值的過(guò)程均可以通過(guò)所述上傳插件來(lái)實(shí)現(xiàn)。如此,在安裝了上傳插件以后,所述客戶端100的瀏覽器就可以通過(guò)所述上傳插件來(lái)建立與所述服務(wù)器300之間的連接,解決了客戶端100上的瀏覽器本身不支持上傳超過(guò)2G的大文件的問(wèn)題。而且由于上傳插件可以在后臺(tái)運(yùn)行,不會(huì)一直停留在當(dāng)面的上傳頁(yè)面,因此,前臺(tái)的瀏覽器還可以做其他操作,給用戶的使用帶來(lái)很大的便利。
[0026]步驟S16:檢測(cè)獲取的文件是否已經(jīng)在所述服務(wù)器300中存在。在實(shí)際應(yīng)用中,該步驟可以具體通過(guò)Php腳本來(lái)執(zhí)行。具體地,所述服務(wù)器300根據(jù)文件的信息即特定值在所述數(shù)據(jù)庫(kù)400中查詢是否有所述獲取的文件。若所述獲取的文件在所述服務(wù)器300中存在,則進(jìn)入步驟S17,若所述獲取的文件在所述服務(wù)器300中不存在,則進(jìn)入步驟S18。
[0027]步驟S17:提示用戶上傳完成,再繼續(xù)從上傳隊(duì)列中獲取下一個(gè)文件,直到將上傳隊(duì)列中不存在文件,則上傳完成。如此,對(duì)于已經(jīng)存在于所述服務(wù)器300中的文件則不會(huì)再重復(fù)上傳,而是直接提示用戶上傳完成,提高了上傳速率,達(dá)到極速上傳的效果,并且避免了所述服務(wù)器300中出現(xiàn)冗余的文件,節(jié)省了所述服務(wù)器300的存儲(chǔ)空間。
[0028]步驟S18:上傳獲取的文件。上傳完成后,提示用戶上傳完成,并繼續(xù)從上傳隊(duì)列中獲取下一個(gè)文件,直到將上傳隊(duì)列中的文件全部上傳完成。本實(shí)施例中,在上傳文件的過(guò)程由于采用的是異步傳輸,所以瀏覽器不會(huì)出現(xiàn)超時(shí)提示,避免了由于上傳時(shí)間太久給用戶造成不便,即在所述客戶端100的頁(yè)面上用戶可以同時(shí)進(jìn)行其他操作,使用起來(lái)更方便。另外,在上傳文件后,如果用戶需要加密,則可以對(duì)文件使用DES加密算法進(jìn)行加密。
[0029]以上所揭露的僅為本發(fā)明實(shí)施例中的較佳實(shí)施例而已,當(dāng)然不能以此來(lái)限定本發(fā)明之權(quán)利范圍,因此依本發(fā)明權(quán)利要求所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。
【權(quán)利要求】
1.一種文件上傳方法,包括以下步驟: 在客戶端的瀏覽器上顯示上傳頁(yè)面; 判斷所述客戶端的瀏覽器上是否安裝有上傳插件; 若所述客戶端的瀏覽器上沒(méi)有安裝所述上傳插件,則安裝所述上傳插件; 若所述客戶端的瀏覽器上已經(jīng)安裝了所述上傳插件,在所述上傳頁(yè)面上選擇需要上傳的文件,并將選擇的文件加入到上傳隊(duì)列中; 從上傳隊(duì)列中獲取一個(gè)文件;及 上傳獲取的文件。
2.如權(quán)利要求1所述的文件上傳方法,其特征在于,在從上傳隊(duì)列中獲取一個(gè)文件之后包括以下步驟: 提取上傳文件的信息并輸出至服務(wù)器; 檢測(cè)獲取的文件是否已經(jīng)在所述服務(wù)器中存在; 若所述獲取的文件在所述服務(wù)器中存在,則提示用戶上傳完成; 若所述獲取的文件在所述服務(wù)器中不存在,則上傳獲取的文件。
3.如權(quán)利要求2所述的文件上傳方法,其特征在于,在提示用戶上傳完成后,繼續(xù)從上傳隊(duì)列中獲取下一個(gè)文件,直到將上傳隊(duì)列中的文件全部上傳完成。
4.如權(quán)利要求2所述的文件上傳方法,其特征在于,提取上傳文件的信息后并根據(jù)該信息計(jì)算出一個(gè)特定值,將所述特定值輸出至所述服務(wù)器,以使每個(gè)特定值對(duì)應(yīng)一個(gè)上傳文件。
5.如權(quán)利要求4所述的文件上傳方法,其特征在于,判斷所述獲取的文件在所述服務(wù)器中存在的步驟包括: 根據(jù)所述特定值在一個(gè)數(shù)據(jù)庫(kù)中查詢是否有所述獲取的文件。
6.如權(quán)利要求4所述的文件上傳方法,其特征在于,通過(guò)php腳本檢測(cè)所述獲取的文件是否已經(jīng)在所述服務(wù)器中存在。
7.如權(quán)利要求1所述的文件上傳方法,其特征在于,在上傳文件的過(guò)程采用的是異步傳輸。
8.一種文件上傳系統(tǒng),運(yùn)行于客戶端及服務(wù)器中,其包括: 顯示模塊,用于在客戶端的瀏覽器上顯示上傳頁(yè)面; 判斷模塊,用于判斷所述客戶端的瀏覽器上是否安裝有上傳插件,若所述客戶端的瀏覽器上沒(méi)有安裝所述上傳插件,則安裝所述上傳插件; 選擇模塊,若所述客戶端的瀏覽器上已經(jīng)安裝了所述上傳插件,在所述上傳頁(yè)面上選擇需要上傳的文件,并將選擇的文件加入到上傳隊(duì)列中; 獲取模塊,用于從上傳隊(duì)列中獲取一個(gè)文件;及 上傳模塊,用于上傳獲取的文件。
9.如權(quán)利要求8所述的文件上傳系統(tǒng),其特征在于,該系統(tǒng)還包括: 輸出模塊,用于提取上傳文件的信息并輸出至服務(wù)器; 檢測(cè)模塊,用于檢測(cè)由獲取的文件是否已經(jīng)在所述服務(wù)器中存在,若所述獲取的文件在所述服務(wù)器中存在,則提示用戶上傳完成。
10.如權(quán)利要求9所述的文件上傳系統(tǒng),其特征在于,提取上傳文件的信息后可以計(jì)算出一個(gè)特定值,將所述 特定值輸出至所述服務(wù)器,以使每個(gè)特定值對(duì)應(yīng)一個(gè)上傳文件。
【文檔編號(hào)】H04L29/06GK103795809SQ201410074187
【公開(kāi)日】2014年5月14日 申請(qǐng)日期:2014年3月3日 優(yōu)先權(quán)日:2014年3月3日
【發(fā)明者】鄧子輝 申請(qǐng)人:深圳市華曦達(dá)科技股份有限公司