2010-08-09 40 views
0

我正在嘗試構建一個大文件上傳器。目前我正在使用swfupload和nginx + rails,並且能夠在遇到問題之前上載1 GB大的文件。 1 GB之後,根據操作系統的不同,swfuploader會啓動鎖定或剛開始引發500次錯誤。基於桌面的文件上傳器的協議

我注意到Vimeo使用桌面上傳器提供2GB上傳。 Flickr也有類似的東西(我認爲他們支持暫停上傳)。什麼協議可以用於這樣的桌面上傳器? FTP可以用於這個嗎?

感謝 Prateek

回答

0

吶,我不會用FTP對於這一點,有以下原因:

  • FTP是邪惡的,應該死(主動/被動連接的,未加密的證書)
  • 妥善處理安全問題將非常複雜。您不能使用單一帳戶進行所有操作(因爲證書需要嵌入到您的客戶端軟件中),所以您需要一個FTP服務器,它可以根據您的Web應用程序的用戶數據庫進行身份驗證(可能,但是長時間)
  • 您需要在應用程序和FTP服務器之間編寫一些集成

您可以使用自定義簡單協議處理此問題。我不知道是否通過HTTP執行它會很高效,但如果是這樣,您只需要將文件的一部分進行POST並在服務器端進行處理。只要確保你允許部分上傳。它應該很容易實現。