明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

使用ASP完成文件上載(上傳)的各種方法

[摘要]最近做在做項(xiàng)目,涉及到文件上載的問題,找來資料研究了一下。當(dāng)用戶需要將文件傳輸?shù)椒⻊?wù)器上時(shí),常用方法是使用FTP方式,用FTP的話雖然傳輸穩(wěn)定,但安全性是個(gè)嚴(yán)重的問題,而且FTP服務(wù)器讀用戶庫獲取權(quán)限,這樣對(duì)于用戶使用來說還是不太方便。如果我們能把文件上載功能與Web集成,使用戶僅用Web瀏覽器就...

  最近做在做項(xiàng)目,涉及到文件上載的問題,找來資料研究了一下。當(dāng)用戶需要將文件傳輸?shù)椒⻊?wù)器上時(shí),常用方法是使用FTP方式,用FTP的話雖然傳輸穩(wěn)定,但安全性是個(gè)嚴(yán)重的問題,而且FTP服務(wù)器讀用戶庫獲取權(quán)限,這樣對(duì)于用戶使用來說還是不太方便。如果我們能把文件上載功能與Web集成,使用戶僅用Web瀏覽器就能完成上載任務(wù),這對(duì)于他們來說將是非常方便的。

  網(wǎng)絡(luò)上有很多介紹ASP上載文件的方法,歸結(jié)起來有以下三大類實(shí)現(xiàn)方法,讀者可以根據(jù)自己網(wǎng)站的條件和需求來選擇合適的方法。

一、服務(wù)器組件上載方式:

  該方法以SA-FileUp組件、AspUpload組件、lyfUpload組件為代表。

  Software Artisans的SA-FileUp是最早的商業(yè)Active Server組件之一,幾經(jīng)改進(jìn),現(xiàn)在作為一個(gè)純粹的ASP組件存在。Persits Software的ASPUpload也是一個(gè)功能很強(qiáng)大的COM組件。他們均實(shí)現(xiàn)了各種文件上載所需要的功能:上載大文件、限制上載文件的大小、上載多個(gè)文件、顯示上載進(jìn)度條、能夠?qū)⑽募4娴綌?shù)據(jù)庫中、……。

  該類方法的優(yōu)點(diǎn)是運(yùn)行穩(wěn)定,功能強(qiáng)大,對(duì)瀏覽器沒有任何要求。其缺點(diǎn)就是需要在服務(wù)器上注冊(cè)組件。如果網(wǎng)站管理員對(duì)服務(wù)器擁有管理權(quán)限,則該方法應(yīng)該是實(shí)現(xiàn)文件上載的首選。

二、無組件上載方式:

  該方法以化境無組件上傳、無懼無組件上傳、先鋒無組件上傳等為代表。

  該方法是網(wǎng)絡(luò)上應(yīng)用最多最廣的方法,并且有很多應(yīng)用實(shí)例的源代碼,其優(yōu)點(diǎn)是對(duì)服務(wù)器和瀏覽器均沒有任何要求,適應(yīng)性強(qiáng),應(yīng)用范圍廣。但它也存在著一個(gè)缺點(diǎn),上載文件的時(shí)候沒有進(jìn)度條的顯示,并且IIS默認(rèn)限制不允許上載超過200KB的文件(除非修改IIS的默認(rèn)設(shè)置AspMaxRequestEntityAllowed)。

  如果只需要上載小文件,則應(yīng)該是首選方案。如果需要上載大文件,則需要網(wǎng)站管理員修改IIS的默認(rèn)設(shè)置AspMaxRequestEntityAllowed。

三、瀏覽器組件上載方式:

  該方法以XUpload組件、XUploadFiles組件、縱橫HTTP文件上傳組件為代表。

  該方法在網(wǎng)絡(luò)上應(yīng)用相對(duì)要少一些,其優(yōu)點(diǎn)是對(duì)服務(wù)器無要求,不需要在服務(wù)器上安裝組件,并且能提供文件上載所需要的各種功能:上載大文件、限制上載文件的大小、上載多個(gè)文件、顯示上載進(jìn)度條、……。其缺點(diǎn)也比較明顯,需要注冊(cè)瀏覽器組件(在客戶端)。該方法適用于需要上載大文件,而網(wǎng)站管理員對(duì)服務(wù)器沒有管理權(quán)限的情況(如虛擬主機(jī)、租用空間等)。

 

  • 各種上載方法橫向比較結(jié)果:
 服務(wù)器要求瀏覽器要求上傳文件限制上傳時(shí)有無進(jìn)度條其他
SA-FileUp
-
支持大文件,無限制
有進(jìn)度條
需要有服務(wù)器控制權(quán)
AspUpload
安裝組件
-
支持大文件,無限制
有進(jìn)度條
需要有服務(wù)器控制權(quán)
lyfUpload
安裝組件
-
支持大文件,無限制
需要有服務(wù)器控制權(quán)
化境無組件上傳
-
-
與IIS設(shè)置相關(guān),
IIS默認(rèn)設(shè)置最大200KB
通用,
適用小文件上載
無懼無組件上傳
-
-
與IIS設(shè)置相關(guān),
IIS默認(rèn)設(shè)置最大200KB
通用,
適用小文件上載
先鋒無組件上傳
-
-
與IIS設(shè)置相關(guān),
IIS默認(rèn)設(shè)置最大200KB
通用,
適用小文件上載
XUploadFiles
-
安裝組件
支持大文件,無限制
有進(jìn)度條
租用空間,
而需要上載大文件
縱橫HTTP文件
上傳組件
-
安裝組件
支持大文件,無限制
有進(jìn)度條
租用空間,
而需要上載大文件