2013-03-01 66 views
0

我正在使用Azure移動服務爲Web應用程序存儲圖像。 我已經成功地將圖像上傳到私人容器。我遵循本介紹性指南(http://code.msdn.microsoft.com/windowsapps/Upload-File-to-Windows-c9169190)中的邏輯,即當將文件上傳到數據庫時,SAS是由在將記錄插入表中時調用的節點腳本生成的。使用azure移動服務如何從私人容器下載blob?

從移動應用程序使用此方法的原因之一是,存儲密鑰不會存儲在應用程序源本身內。

符合這個想法我現在正在努力尋找如何下載圖像的例子。

也許我應該更新相同表的讀取功能,並返回一個可用於訪問圖像的SAS。

這聽起來合理嗎?還是他們更好的方法? 任何援助非常感謝。

回答

0

這聽起來對我來說就像你在正確的軌道上。如果您要將圖像存儲在專用容器中並希望移動設備讀取它,那麼您就需要生成一個允許讀取並返回到設備的SAS。設備代碼可以使用該SAS URL直接對BLOB存儲進行調用以檢索圖像。

這隻適用於您希望容器私密的情況。如果容器是公開的,那麼只需返回URL(就像他們鏈接到的文章中那樣)應該沒問題。

這也取決於你對圖像的私密程度。例如,假設您有一個爲每個用戶創建的容器。如果容器上有一個共享訪問簽名策略,並且有一個非常遙遠的過期日期,那麼從技術上講,有人仍然需要使用SAS的URL來查看它,但是您可以創建該SAS並將其存儲爲樣本。移動應用程序可以在從您的服務中讀取數據時獲得URL,並直接轉到BLOB而不需要創建額外的SAS。在我看來,這個選項只有在圖像不會很長時間的情況下才有效,或者如果有人從他們可以訪問的網絡流量中嗅探URL,那麼您真的不在乎。

如果你想它很安全,不知道該圖像將有多長左右,那麼你應該用你的陳述得到一個SAS讀時,應用程序從相關表中的數據讀取的方法去。 SAS可以有一個相當短的期限,移動設備可以緩存結果。