使用ASP完成文件上載(上傳)的各種方法
發(fā)表時間:2024-06-05 來源:明輝站整理相關軟件相關文章人氣:
[摘要]最近做在做項目,涉及到文件上載的問題,找來資料研究了一下。當用戶需要將文件傳輸?shù)椒⻊掌魃蠒r,常用方法是使用FTP方式,用FTP的話雖然傳輸穩(wěn)定,但安全性是個嚴重的問題,而且FTP服務器讀用戶庫獲取權限,這樣對于用戶使用來說還是不太方便。如果我們能把文件上載功能與Web集成,使用戶僅用Web瀏覽器就...
最近做在做項目,涉及到文件上載的問題,找來資料研究了一下。當用戶需要將文件傳輸?shù)椒⻊掌魃蠒r,常用方法是使用FTP方式,用FTP的話雖然傳輸穩(wěn)定,但安全性是個嚴重的問題,而且FTP服務器讀用戶庫獲取權限,這樣對于用戶使用來說還是不太方便。如果我們能把文件上載功能與Web集成,使用戶僅用Web瀏覽器就能完成上載任務,這對于他們來說將是非常方便的。
網絡上有很多介紹ASP上載文件的方法,歸結起來有以下三大類實現(xiàn)方法,讀者可以根據(jù)自己網站的條件和需求來選擇合適的方法。
一、服務器組件上載方式:
該方法以SA-FileUp組件、AspUpload組件、lyfUpload組件為代表。
Software Artisans的SA-FileUp是最早的商業(yè)Active Server組件之一,幾經改進,現(xiàn)在作為一個純粹的ASP組件存在。Persits Software的ASPUpload也是一個功能很強大的COM組件。他們均實現(xiàn)了各種文件上載所需要的功能:上載大文件、限制上載文件的大小、上載多個文件、顯示上載進度條、能夠將文件保存到數(shù)據(jù)庫中、……。
該類方法的優(yōu)點是運行穩(wěn)定,功能強大,對瀏覽器沒有任何要求。其缺點就是需要在服務器上注冊組件。如果網站管理員對服務器擁有管理權限,則該方法應該是實現(xiàn)文件上載的首選。
二、無組件上載方式:
該方法以化境無組件上傳、無懼無組件上傳、先鋒無組件上傳等為代表。
該方法是網絡上應用最多最廣的方法,并且有很多應用實例的源代碼,其優(yōu)點是對服務器和瀏覽器均沒有任何要求,適應性強,應用范圍廣。但它也存在著一個缺點,上載文件的時候沒有進度條的顯示,并且IIS默認限制不允許上載超過200KB的文件(除非修改IIS的默認設置AspMaxRequestEntityAllowed)。
如果只需要上載小文件,則應該是首選方案。如果需要上載大文件,則需要網站管理員修改IIS的默認設置AspMaxRequestEntityAllowed。
三、瀏覽器組件上載方式:
該方法以XUpload組件、XUploadFiles組件、縱橫HTTP文件上傳組件為代表。
該方法在網絡上應用相對要少一些,其優(yōu)點是對服務器無要求,不需要在服務器上安裝組件,并且能提供文件上載所需要的各種功能:上載大文件、限制上載文件的大小、上載多個文件、顯示上載進度條、……。其缺點也比較明顯,需要注冊瀏覽器組件(在客戶端)。該方法適用于需要上載大文件,而網站管理員對服務器沒有管理權限的情況(如虛擬主機、租用空間等)。
| 服務器要求 | 瀏覽器要求 | 上傳文件限制 | 上傳時有無進度條 | 其他 |
---|
SA-FileUp | | - | 支持大文件,無限制 | 有進度條 | 需要有服務器控制權 |
AspUpload | 安裝組件 | - | 支持大文件,無限制 | 有進度條 | 需要有服務器控制權 |
lyfUpload | 安裝組件 | - | 支持大文件,無限制 | 無 | 需要有服務器控制權 |
化境無組件上傳 | - | - | 與IIS設置相關, IIS默認設置最大200KB | 無 | 通用, 適用小文件上載 |
無懼無組件上傳 | - | - | 與IIS設置相關, IIS默認設置最大200KB | 無 | 通用, 適用小文件上載 |
先鋒無組件上傳 | - | - | 與IIS設置相關, IIS默認設置最大200KB | 無 | 通用, 適用小文件上載 |
XUploadFiles | - | 安裝組件 | 支持大文件,無限制 | 有進度條 | 租用空間, 而需要上載大文件
|
縱橫HTTP文件 上傳組件 | - | 安裝組件 | 支持大文件,無限制 | 有進度條 | 租用空間, 而需要上載大文件 |