2011-09-24 58 views
0

我無法使用會話。臨時將文件存儲在服務器上,直到任務完成

所以繼承人的場景:我想讓用戶上傳圖片,但該圖片需要特定的尺寸。因此,我允許他們上傳任何尺寸的圖像,將其暫時存儲在服務器上(調整大小以適合網頁),將其顯示回給用戶,讓用戶裁剪它。然後我將裁剪細節發送回服務器,裁剪圖像並保存,並將其用作用戶個人資料圖片。

我試圖在上傳之前完成所有這些工作,但顯然,它存在安全風險並且不允許。

那麼如何臨時存儲這個文件呢?如果用戶在裁剪之前沒有回來,我不想要像坐在我的服務器上那樣的大圖像。我將如何去除這樣的無狀態應用程序中的文件?

文件存儲在CDN上。

回答

0

有很多方法可以解決這個問題,但也許一個簡單的方法是,每次上傳文件時,都會調用一個小例程來檢查和刪除超過xxx分鐘的任何「大型」文件。

或者,在任務計劃程序中每安排一個作業在xxx分鐘內執行相同的操作。

+0

我不知道什麼是任務調度器。這是在asp.net還是iis? –

+0

它在Windows中,您需要訪問本機器,即物理上或通過RDP。如果你在你的ISP的共享帳戶上託管它,它最不可能是一個選項,所以然後選擇A - 讓每個文件上傳過程做一些清理工作,作爲服務請求的一部分,即擺脫孤兒文件。 –

+0

Quartz.NET是一個任務/作業調度器的例子。 – Cymen

0

您可以使用TempData,與Session類似,但在閱讀後死亡。

+0

這將需要圖像再次上傳? –

+0

@Lolcoder很大程度上取決於你的實現。 –

相關問題