2011-11-29 64 views
0

我正在使用基於Monorails的應用程序,該應用程序在運行時生成圖像/圖表。該代碼將圖像寫入OutputStreams而不是寫入Appserver硬盤。它允許用戶下載圖像。我想確保只有登錄用戶才能下載圖像,而不是其他人。只允許登錄用戶下載圖像

例如,如果任何用戶A試圖下載爲用戶B生成的圖像,則用戶A不應該能夠做到這一點。

注:我沒有將文件存儲到硬盤上。

我該如何實現?

下面是我爲圖像下載寫的示例代碼。

var stream = new MemoryStream(); 
Response.Clear(); 
Response.ContentType = "application/image"; 
Response.AddHeader("Content-Disposition","attachment; filename=" + imagefilename); 
var array = stream.To Array(); 
Response. OutputStream.Write(array,0,array.length); 
Response.End(); 

請幫我解決這個問題。

感謝, 拉胡爾

+0

到目前爲止沒有。仍然在研究,我更像是一個業務層開發人員,在UI方面工作不多。有什麼好的建議? –

回答

0

您需要邏輯代碼來檢查,如果登錄的用戶「擁有」他們正試圖下載圖像。

如果他們不'擁有'它,Response.End他們的請求