一種3d打印模型文件的網(wǎng)絡(luò)存儲(chǔ)調(diào)用方法和存儲(chǔ)系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)通信領(lǐng)域,尤其涉及一種3D打印模型文件的網(wǎng)絡(luò)存儲(chǔ)調(diào)用方法和基于網(wǎng)絡(luò)的3D打印模型文件存儲(chǔ)系統(tǒng)。
【背景技術(shù)】
[0002]3D打印中的模型文件是指3D打印中所需要的模型文檔文件,其中包括的三維模型可以在任一三維建模軟件中創(chuàng)建。常見的3D打印模型文件包括STL、OBJ, WRL、3DS等十幾種。
[0003]在模型文件中,文檔內(nèi)描述了構(gòu)成一個(gè)模型的必要數(shù)據(jù)和數(shù)學(xué)信息,還有一部分模型文件包含貼圖文件,貼圖文件放置在模型文件的外部,使用時(shí)通過文件引用調(diào)用。與普通的文檔不同,3D打印中的模型文件比較臃腫,經(jīng)??梢赃_(dá)到幾十兆甚至幾百兆,占用大量的磁盤空間,造成磁盤空間的浪費(fèi)。此外,模型文件不進(jìn)行加密。但是考慮到模型文件本身具有版權(quán),不加密的模型文件安全性較低,同時(shí)也不利于傳播和維權(quán)。
[0004]因此,現(xiàn)有技術(shù)中3D打印模型文件存儲(chǔ)存在占用磁盤空間大,安全性差的缺陷。
【發(fā)明內(nèi)容】
[0005]本發(fā)明提供一種3D打印模型文件的網(wǎng)絡(luò)存儲(chǔ)方法,旨在克服現(xiàn)有技術(shù)中3D打印模型文件存儲(chǔ)占用磁盤空間大且安全性差的缺陷。
[0006]本發(fā)明提供一種3D打印模型文件的網(wǎng)絡(luò)存儲(chǔ)調(diào)用方法,包括以下步驟:
(1)儲(chǔ)存有3D打印模型文件的上傳用戶終端對(duì)3D打印模型文件加密生成密碼,向服務(wù)器發(fā)送上傳請(qǐng)求,上傳3D打印模型文件和與所述密碼對(duì)應(yīng)的密鑰種子至服務(wù)器;
(2)所述服務(wù)器接收所述模型文件和密鑰種子,服務(wù)器的壓縮模塊對(duì)接收到的模型文件進(jìn)行壓縮,并將壓縮后的模型文件存儲(chǔ)在所述服務(wù)器的磁盤系統(tǒng)中;所述密鑰種子存儲(chǔ)在所述服務(wù)器的數(shù)據(jù)庫中;
(3)調(diào)用用戶終端向服務(wù)器發(fā)送調(diào)用請(qǐng)求;服務(wù)器響應(yīng)所述調(diào)用請(qǐng)求,服務(wù)器加密模塊調(diào)用所述數(shù)據(jù)庫中對(duì)應(yīng)的密鑰種子,并將所述密鑰種子混淆為不可讀的字符串以建立實(shí)際密鑰,將所述實(shí)際密鑰被作為參數(shù)寫入頁面代碼中并返回至所述調(diào)用用戶終端,同時(shí)從所述磁盤系統(tǒng)中調(diào)用對(duì)應(yīng)的壓縮模型文件傳送至所述調(diào)用用戶終端;
(4)調(diào)用用戶終端的展示模塊接收服務(wù)器響應(yīng)返回的頁面代碼并讀取實(shí)際密鑰;調(diào)用用戶終端的解壓模塊采用對(duì)稱算法或非對(duì)稱算法還原所述實(shí)際密鑰并解密解壓模型文件。
[0007]進(jìn)一步的,所述上傳用戶終端以HTTP協(xié)議方式上傳所述模型文件至服務(wù)器。
[0008]更進(jìn)一步的,上傳所述模型文件時(shí),所述模型文件中的二進(jìn)制流附加在POST數(shù)據(jù)的末尾。
[0009]更進(jìn)一步的,所述服務(wù)器響應(yīng)所述調(diào)用用戶終端的調(diào)用請(qǐng)求后,所述服務(wù)器基于HTTP協(xié)議傳送所述壓縮模型文件至所述調(diào)用用戶終端。
[0010]進(jìn)一步的,所述上傳用戶終端以FTP協(xié)議方式上傳所述模型文件至服務(wù)器。
[0011]更進(jìn)一步的,所述服務(wù)器響應(yīng)所述調(diào)用用戶終端的調(diào)用請(qǐng)求后,所述服務(wù)器基于FTP協(xié)議傳送所述壓縮模型文件至所述調(diào)用用戶終端。
[0012]優(yōu)選的,所述壓縮模塊為ZIP、RAR或7Z壓縮模塊。
[0013]優(yōu)選的,所述展示模塊為Flash。
[0014]優(yōu)選的,所述展示模塊為支持HTML5的瀏覽器。
[0015]本發(fā)明所提出的3D打印模型文件的網(wǎng)絡(luò)存儲(chǔ)調(diào)用方法,將上傳至服務(wù)器的模型文件進(jìn)行壓縮,同時(shí)對(duì)密鑰進(jìn)行多次加密解密,可以同時(shí)保障傳輸中數(shù)據(jù)的安全性和帶寬性能,提高了效率,降低了成本。
[0016]本發(fā)明同時(shí)還公開了一種基于網(wǎng)絡(luò)的3D打印模型文件的存儲(chǔ)系統(tǒng),包括:
上傳用戶終端,存儲(chǔ)3D打印模型文件并對(duì)3D打印模型文件加密生成密碼,向服務(wù)器發(fā)送上傳請(qǐng)求,上傳所述3D打印模型文件和與所述密碼對(duì)應(yīng)的密鑰種子至服務(wù)器;
服務(wù)器,接收所述上傳用戶終端通過HTTP或FTP協(xié)議傳送的3D打印模型文件和密鑰種子;所述服務(wù)器具有壓縮模塊和加密模塊,其中所述壓縮模塊壓縮所述模型文件并將其存儲(chǔ)在所述服務(wù)器的磁盤系統(tǒng)中,所述密鑰種子存儲(chǔ)在所述服務(wù)器的數(shù)據(jù)庫中;
調(diào)用用戶終端,接收所述服務(wù)器同時(shí)分別返回的壓縮模型文件和寫入實(shí)際密鑰的頁面代碼;其中實(shí)際密鑰是服務(wù)器加密模塊調(diào)用所述數(shù)據(jù)庫中對(duì)應(yīng)的密鑰種子,并將所述密鑰種子混淆為不可讀的字符串建立的。所述調(diào)用用戶終端包括解壓模塊和展示模塊,所述展示模塊接收服務(wù)器響應(yīng)返回的頁面代碼并讀取實(shí)際密鑰;調(diào)用用戶終端的解壓模塊采用對(duì)稱算法或非對(duì)稱算法還原所述實(shí)際密鑰并解密解壓模型文件。
[0017]本發(fā)明所公開的基于網(wǎng)絡(luò)的3D打印模型文件的存儲(chǔ)系統(tǒng),避免了 3D打印模型文件占用大量的磁盤空間,造成磁盤空間的浪費(fèi);采用本發(fā)明所公開的存儲(chǔ)系統(tǒng),將壓縮后的模型文件和密鑰分別存儲(chǔ),大大提高了模型文件的傳輸存儲(chǔ)安全性,利于傳播和知識(shí)產(chǎn)權(quán)保護(hù)。
【附圖說明】
[0018]為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0019]圖1為本發(fā)明所提出的3D打印模型文件的網(wǎng)絡(luò)存儲(chǔ)調(diào)用方法一種實(shí)施例的流程圖;
圖2為本發(fā)明所提出的3D打印模型文件的網(wǎng)絡(luò)存儲(chǔ)系統(tǒng)一種實(shí)施例的結(jié)構(gòu)框圖。
【具體實(shí)施方式】
[0020]為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0021]參見圖1所示,本實(shí)施的3D打印模型文件存儲(chǔ)調(diào)用方法主要基于客戶端和服務(wù)器的架構(gòu)實(shí)現(xiàn),包括以下步驟:
S1、儲(chǔ)存有3D打印模型文件的上傳用戶終端上傳3D打印模型文件至服務(wù)器,其中,所述3D打印模型文件可以在任意能實(shí)現(xiàn)三維建模的軟件中實(shí)現(xiàn),其格式為STL、0BJ、WRL、3DS中的一種或幾種。所述上傳用戶終端可以是(但不限于)電腦、智能手機(jī)、平板電腦中的一種或幾種。所述模型文件包括建模必要的數(shù)據(jù)、數(shù)學(xué)信息以及貼圖文件,文件大小在幾兆至幾百兆之間。上傳用戶終端對(duì)3D打印模型文件進(jìn)行加密,并按照預(yù)定的算法預(yù)設(shè)或隨機(jī)生成密鑰種子和密鑰種子標(biāo)識(shí),密鑰種子和對(duì)應(yīng)的密鑰種子標(biāo)識(shí)一同寫入3D打印模型文件的配置文件中。
[0022]上傳用戶終端通過HTTP協(xié)議或FTP協(xié)議和服務(wù)器建立連接,發(fā)送請(qǐng)求上傳3D打印模型文件至服務(wù)器。以采用HTTP協(xié)議為例,上傳時(shí),可以將3D打印模型文件打包成壓縮包進(jìn)行上傳。上傳客戶終端向服務(wù)器請(qǐng)求服務(wù),傳送請(qǐng)求方法和路徑。通常來說,采用POST方法并將3D打印模型文件的二進(jìn)制流附加在POST數(shù)據(jù)的末尾。由于HTTP協(xié)議簡單,因而通信速度很快。此外,由于HTTP協(xié)議允許傳輸任意類型的數(shù)據(jù)對(duì)象,所以通過Content-Type即可以對(duì)需要上傳的3D打印模型文件中建模必要的數(shù)據(jù),數(shù)學(xué)信息和貼圖文件進(jìn)行分類。靈活快捷。同理,上傳用戶終端也可以采用FTP協(xié)議傳輸3D打印模型文件。
[0023]S2、服務(wù)器接收3D打印模型文件和密鑰種子之后,也就是服務(wù)器收到上傳用戶終端的請(qǐng)求并處理完上傳用戶終端的請(qǐng)求后,即斷開連接。這種無連接的方式可以最大程度的節(jié)省傳輸時(shí)間。
[0024]而后,服務(wù)器的壓縮模塊對(duì)接收到的模型文件進(jìn)行壓縮,并將壓縮后的模型文件存儲(chǔ)在所述服務(wù)器的磁盤系統(tǒng)中。與3D打印模型文件對(duì)應(yīng)的密鑰種子存儲(chǔ)在所述服務(wù)器的數(shù)據(jù)庫中。
[0025]其中,服務(wù)器的壓縮模塊為ZIP、RAR或7Z壓縮模塊,或可以實(shí)現(xiàn)同樣壓縮功能壓縮算法或程序?qū)崿F(xiàn)。
[0026]S3、需要調(diào)用3D打印模型文件的調(diào)用用戶終端向服務(wù)器發(fā)送調(diào)用請(qǐng)求,調(diào)用請(qǐng)求中包括需要調(diào)用的3D打印模型文件的密鑰種子對(duì)應(yīng)的密鑰種子標(biāo)識(shí),從而建立調(diào)用用戶終端和服務(wù)器之間的連接。具體來說,調(diào)用用戶終端向服務(wù)器發(fā)送一次get請(qǐng)求或者一個(gè)異步的POST請(qǐng)求,服務(wù)器在接收上述請(qǐng)求之后,返回一個(gè)承擔(dān)顯示功能的HTML頁面至調(diào)用用戶終端。在該HTML頁面中,密鑰種子被服務(wù)器的加密模塊混淆為不可讀的字符串以建立實(shí)際密鑰,并將所述實(shí)際密鑰作為參數(shù)寫入HTML頁面代碼。
[0027