Web ページを介して、ユーザーが Azure クラウド ストレージに保存されている (非常に大きな) ファイルをダウンロードできるようにしたいと考えています。GetSharedAccessSignature を使用して、ユーザーがダウンロードできるようにします (注: コンテナーは保護されており、公開されていません)。次のコードを使用します。
// get the file blob
// CloudBlockBlob blob set previously and check (it exists)
string sas = blob.GetSharedAccessSignature(
new SharedAccessPolicy() {
Permissions = SharedAccessPermissions.Read,
SharedAccessStartTime = DateTime.Now.AddMinutes(-5),
SharedAccessExpiryTime = DateTime.Now.AddMinutes(54)
});
Response.Redirect(blob.Attributes.Uri.AbsoluteUri + sas);
これは、ダウンロードに 1 時間以上かかる場合を除いて機能します (前述したように、非常に大きなファイルがあまり良好でないインターネット接続でダウンロードされます...)。ダウンロードに時間がかかる場合、タイムアウトが発生し、共有アクセスの有効期限が過ぎるとダウンロードが停止します。
どうすればこれを解決できますか?
敬具、 ロビー・デ・サッター