使用azure存储的c#在使用DeleteIfExists()时出现异常
本文关键字:异常 DeleteIfExists 存储 azure 使用 | 更新日期: 2023-09-27 17:51:26
当使用CloudBlockBlob
类中的DeleteIfExists
方法时,我得到一个异常。
这是我的代码:
CloudBlobClient blobClient = this._storageAccount.CreateCloudBlobClient();
directory = directory.ToLower();
string containerDirectory = this.GetContainer(directory);
string relativePathWithoutContainer = this.GetRelativePathWithoutContainer(directory);
CloudBlobContainer container = blobClient.GetContainerReference(containerDirectory);
container.CreateIfNotExist();
container.SetPermissions(new BlobContainerPermissions() { PublicAccess = BlobContainerPublicAccessType.Blob });
foreach (HttpPostedFileBase file in files)
{
CloudBlockBlob blob = container.GetBlockBlobReference(string.Format("{0}/{1}", relativePathWithoutContainer, file.FileName.ToLower()));
blob.DeleteIfExists();
blob.UploadFromStream(file.InputStream,new BlobRequestOptions());
}
return true;
我在
这行得到了异常:blob.DeleteIfExists();
异常的详细信息如下:
服务器无法验证请求。确保的值包含签名的授权头格式正确。
从这里得到一个例子,尝试添加这些,看看它是否有效
//删除已经存在的blob,同时删除所有快照
BlobRequestOptions options = new BlobRequestOptions();
options.DeleteSnapshotsOption = DeleteSnapshotsOption.IncludeSnapshots;
blob.DeleteIfExists(options);