本發明涉及通信領域,尤其涉及一種即時通信過程中文件傳輸的方法及系統。
背景技術:
通信軟件是一種人與人之間互相發送信息的軟件,在現有的即時通信聊天系統中,當需要發送圖片、視頻或語音等文件信息時,通常采用的步驟為:1、將文件信息上傳至服務器,上傳成功后得到文件在服務器上的網址信息;2、將所述網址信息發送給服務器,服務器將所述網址信息發送給聊天對象終端;3、聊天對象終端根據所述網址信息下載文件,然后顯示相關文件信息。
顯然,在通信過程中,現有的文件傳輸方法存在重復上傳和下載的過程,這極大地浪費了網絡資源。
因此,現有技術還有待于改進和發展。
技術實現要素:
鑒于上述現有技術的不足,本發明的目的在于提供一種即時通信過程中文件傳輸方法及系統,旨在解決現有通信應用聊天時存在重復上傳和下載文件的過程,導致網絡資源浪費的問題。
本發明的技術方案如下:
一種即時通信過程中文件傳輸的方法,其中,包括步驟:
a、第一終端獲取待發送文件并采用摘要算法計算所述待發送文件的特征值,建立待發送文件與特征值一一對應的關系;
b、查詢服務器中是否存在與待發送文件相對應的特征值,若存在,則服務器直接將所述特征值發送至第二終端;
c、所述第二終端接收特征值后,在本地數據庫中查詢是否存在與所述特征值相對應的文件,若存在,則直接從本地數據庫中調用所述文件并顯示。
所述的即時通信過程中文件傳輸的方法,其中,所述步驟a具體包括:
a1、采用md5算法對待發送文件進行編碼得到md5值,將所述md5值作為待發送文件的特征值。
所述的即時通信過程中文件傳輸的方法,其中,所述步驟b還包括:
b1、若服務器中不存在與待發送文件相對應的特征值時,則先將所述待發送文件與特征值上傳至服務器并保存,然后服務器將所述特征值發送至第二終端。
所述的即時通信過程中文件傳輸的方法,其中,所述步驟c還包括:
c1、若本地數據庫中不存在與所述特征值對應的文件時,則發送網絡請求,從服務器中下載與所述特征值對應的文件并顯示。
所述的即時通信過程中文件傳輸的方法,其中,所述待發送的文件為圖片、文本、視頻或語音的一種。
一種即時通信過程中文件傳輸的系統,其中,包括第一終端、第二終端以及服務器,其中,
所述第一終端用于獲取待發送文件并采用摘要算法計算所述待發送文件的特征值,建立待發送文件與特征值一一對應的關系;以及查詢服務器中是否存在與待發送文件相對應的特征值;
所述服務器用于將所述特征值發送至第二終端;
所述第二終端用于接收特征值后,在本地數據庫中查詢是否存在與所述特征值相對應的文件,若存在,則直接從本地數據庫中調用所述文件并顯示。
所述的即時通信過程中文件傳輸的系統,其中,所述第一終端具體采用md5算法對待發送文件進行編碼得到md5值,將所述md5值作為待發送文件的特征值。
所述的即時通信過程中文件傳輸的系統,其中,所述第一終端還用于當服務器中不存在與待發送文件相對應的特征值時,則將所述待發送文件與特征值上傳至服務器并保存。
所述的即時通信過程中文件傳輸的系統,其中,所述第二終端還用于當本地數據庫中不存在與所述特征值對應的文件時,則發送網絡請求,從服務器中下載與所述特征值對應的文件并顯示。
所述的即時通信過程中文件傳輸的系統,其中,所述待發送的文件為圖片、文本、視頻或語音的一種。
有益效果:本發明提供的即時通信過程中文件傳輸的方法,首先通過計算所述待發送文件的特征值,建立待發送文件與特征值一一對應的關系;當在服務器中查詢到與待發送文件相對應的特征值,則直接將所述特征值發送至第二終端;所述第二終端接收特征值后,在本地數據庫中查詢是否存在與所述特征值相對應的文件,若存在,則直接從本地數據庫中調用所述文件并顯示。本發明有效解決了現有即時通信中重復上傳和下載文件的問題,提高了文件傳輸效率并減少了網絡資源的浪費,給用戶帶來方便。
附圖說明
圖1為本發明一種即時通信過程中文件傳輸的方法較佳實施例的流程圖;
圖2為本發明一種即時通信過程中文件傳輸的系統較佳實施例的結構框圖。
具體實施方式
本發明提供一種即時通信過程中文件傳輸的方法及系統,為使本發明的目的、技術方案及效果更加清楚、明確,以下對本發明進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,并不用于限定本發明。
請參閱圖1,圖1為本發明一種即時通信過程中文件傳輸方法較佳實施例的流程圖,如圖1所示,其中,包括步驟:
s100、第一終端獲取待發送文件并采用摘要算法計算所述待發送文件的特征值,建立待發送文件與特征值一一對應的關系;
s200、查詢服務器中是否存在與待發送文件相對應的特征值,若存在,則服務器直接將所述特征值發送至第二終端;
s300、所述第二終端接收特征值后,在本地數據庫中查詢是否存在與所述特征值相對應的文件,若存在,則直接從本地數據庫中調用所述文件并顯示。
具體來說,本發明首先通過計算所述待發送文件的特征值,建立待發送文件與特征值一一對應的關系;當在服務器中查詢到與待發送文件相對應的特征值,則直接將所述特征值發送至第二終端;所述第二終端接收特征值后,在本地數據庫中查詢是否存在與所述特征值相對應的文件,若存在,則直接從本地數據庫中調用所述文件并顯示;本發明有效解決了現有即時通信中重復上傳和下載文件的問題,提高了文件傳輸效率并減少了網絡資源的浪費,給用戶帶來方便。
進一步,所述步驟s100中,常用的摘要算法包括haval、ripemd、sha-1以及md5等,本發明優選md5算法對待發送文件進行編碼得到md5值,將所述md5值作為待發送文件的特征值;信息摘要(messagedigest5,md5)算法屬于計算機安全領域廣泛使用的一種散列函數,主要用以提供消息的完整性保護;md5算法可對某一文件產生唯一對應的信息摘要,從而防止文件被篡改;md5算法具有較多優點:任意長度的文件數據,算出的md5值長度都是固定的,并且文件的md5值具有唯一性;對文件數據進行任何改動,即使只修改1個字節,所得到的md5值都有很大區別;因此,本發明將md5值作為待發送文件的特征值,確保文件的唯一性。
進一步,在所述步驟s200中,通過查詢服務器中是否存在與待發送文件相對應的特征值,若存在,則服務器直接將所述特征值發送至第二終端;
若服務器中不存在與待發送文件相對應的特征值時,則先將所述待發送文件與特征值上傳至服務器并保存,然后服務器將所述特征值發送至第二終端。
具體來說,服務器為通信應用實行信息傳輸的連接平臺,具備云存儲功能,可根據即時應用的設置在一定時間內保存所有上傳的文件,例如設置保存時間為15天;當第一終端的待發送文件與其md5值建立一一對應關系后,可首先在服務器中查詢是否存在與待發送文件相同的md5值,若存在,則不需要將待發送文件與md5值上傳至服務器,所述服務器可直接將查詢到的md5值發送至第二終端;此時,可節省一次文件上傳的過程,也節約了網絡資源。
當然,如果服務器中不存在與待發送文件相同的md5值時,則需先將所述待發送文件與其md5值上傳至服務器并保存,然后通過服務器將所述待發送文件的md5值發送至第二終端。
進一步,在所述步驟s300中,當所述第二終端接收特征值后,在本地數據庫中查詢是否存在與所述特征值相對應的文件,若存在,則直接從本地數據庫中調用所述文件并顯示;更進一步,當本地數據庫中不存在與所述特征值對應的文件時,則發送網絡請求,從服務器中下載與所述特征值對應的文件并顯示。
具體來說,第一終端和第二終端在利用即時通信應用進行信息溝通時,溝通的文件會自動保存到本地數據庫中;因此當第二終端接收到md5值后,第二終端會預先在本地數據庫中查詢是否存在與所述md5值相對應的文件,若存在,則直接從本地數據庫中調用所述文件并顯示;從而避免從服務器中再次下載所述文件,節約了網絡資源。
當然,如果在當地數據庫中找不到與所述md5值相對應的文件時,則發送網絡請求,從服務器中下載與所述md5值對應的文件,并在所述第二終端上顯示。
較佳地,在本發明中,所述待發送的文件為圖片、文本、視頻或語音的一種。
基于上述方法,本發明還提供一種即時通信過程中文件傳輸的系統,如圖2所示,其中,包括第一終端10、第二終端20以及服務器30,所述第一終端通過服務器與所述第二終端實現通信,其中,
所述第一終端10用于獲取待發送文件并采用摘要算法計算所述待發送文件的特征值,建立待發送文件與特征值一一對應的關系;以及查詢服務器中是否存在與待發送文件相對應的特征值;
所述服務器30用于將所述特征值發送至第二終端;
所述第二終端20用于接收特征值后,在本地數據庫中查詢是否存在與所述特征值相對應的文件,若存在,則直接從本地數據庫中調用所述文件并顯示。
所述的即時通信過程中文件傳輸的系統,其中,所述第一終端10具體采用md5算法對待發送文件進行編碼得到md5值,將所述md5值作為待發送文件的特征值。
所述的即時通信過程中文件傳輸的系統,其中,所述第一終端10還用于當服務器中不存在與待發送文件相對應的特征值時,則將所述待發送文件與特征值上傳至服務器并保存。
所述的即時通信過程中文件傳輸的系統,其中,所述第二終端20還用于當本地數據庫中不存在與所述特征值對應的文件時,則發送網絡請求,從服務器中下載與所述特征值對應的文件并顯示。
所述的即時通信過程中文件傳輸的系統,其中,所述待發送的文件為圖片、文本、視頻或語音的一種。
綜上所述,本發明提供的即時通信過程中文件傳輸的方法,首先通過計算所述待發送文件的特征值,建立待發送文件與特征值一一對應的關系;當在服務器中查詢到與待發送文件相對應的特征值,則直接將所述特征值發送至第二終端;所述第二終端接收特征值后,在本地數據庫中查詢是否存在與所述特征值相對應的文件,若存在,則直接從本地數據庫中調用所述文件并顯示;本發明有效解決了現有即時通信中重復上傳和下載文件的問題,提高了文件傳輸效率并減少了網絡資源的浪費,給用戶帶來方便。
應當理解的是,本發明的應用不限于上述的舉例,對本領域普通技術人員來說,可以根據上述說明加以改進或變換,所有這些改進和變換都應屬于本發明所附權利要求的保護范圍。