2012-04-28 50 views
1

我正在將手機相機中的照片流上傳到天藍色。我上傳e.ChosenPhoto這是拍攝的照片流,我使用的是blob.Metadata["ImageType"] = "image/jpeg";,但照片上傳時,內容仍標記爲application/octet-stream,當我訪問網址時,瀏覽器下載照片而不是顯示它。將內容類型的天藍色blob設置爲WP7中的圖像

爲了使它成爲jpg,我需要執行哪些步驟?

編輯:它似乎是與WAT for WP - WindowsPhoneCloud.StorageClient.dll 自帶的庫完全不支持blob.Propeties。 (也許因爲WP只支持異步調用?)有沒有任何解決方法設置內容類型?

回答

0

除非使用SAS,否則強烈建議我們使用雲服務上傳blob。如果我們直接從沒有SAS的Windows Phone上傳BLOB,則必須將我們的存儲帳戶密鑰嵌入Windows Phone應用程序中。如果黑客獲得密鑰,他將獲得對我們Windows Azure存儲帳戶的完全控制權。例如,他可以將多個TB數據上傳到存儲,並要求我們爲數據支付費用。因此,不要嘗試從Windows Phone上傳blob,請嘗試在Windows Azure中託管服務。我們將圖片上傳到我們的服務中,我們的服務將文件保存在blob中。只要我們沒有回覆存儲密鑰,它就會是安全的。

如果我們必須直接從沒有SAS的Windows Phone上傳,我們可能需要手動使用REST API才能使該場景生效。根據http://watwp.codeplex.com/discussions/352111,WAT庫不允許我們指定內容類型。另外,我想指出,WAT只是一個工具包。它不是內置的Windows Azure組件。

最好的問候,

Ming Xu。

+0

我知道將密鑰存儲在手機中的風險,但無論如何要感謝。我想現在還沒有解決方案... – Michael 2012-05-01 20:23:05

4

嘗試設置blob.Properties.ContentType = "image/jpeg"

+0

不幸的是,當使用WP7 blob庫時,'blob.Properties'不可用。我正在使用適用於Windows Phone的Windows Azure工具包WindowsPhoneCloud.StorageClient.dll庫 – Michael 2012-04-28 08:19:27