【发布时间】:2017-02-28 16:45:49
【问题描述】:
我在创建 Azure blob 容器时遇到问题。
当我调用 CreateIfNotExists() 函数时,我得到以下异常:
我在互联网上搜索,看看其他人是否有同样的问题。我发现了这个错误的两个主要原因。
远程服务器返回错误:(400) Bad Request。
堆栈跟踪:
at Microsoft.WindowsAzure.Storage.Core.Executor.Executor.ExecuteSync[T](RESTCommand`1 cmd, IRetryPolicy policy, OperationContext operationContext)
at Microsoft.WindowsAzure.Storage.Blob.CloudBlobContainer.Exists(Boolean primaryOnly, BlobRequestOptions requestOptions, OperationContext operationContext)
at Microsoft.WindowsAzure.Storage.Blob.CloudBlobContainer.CreateIfNotExists(BlobContainerPublicAccessType accessType, BlobRequestOptions requestOptions, OperationContext operationContext)
at Microsoft.WindowsAzure.Storage.Blob.CloudBlobContainer.CreateIfNotExists(BlobRequestOptions requestOptions, OperationContext operationContext)
at Customize.AzureSpecific.ProductPhotoStorageService..ctor() in c:\Users\raha\Desktop\Customize\Customize.AzureSpecific\ProductPhotoStorageService.cs:line 28
at lambda_method(Closure , IArguments )
at StructureMap.Construction.BuilderCompiler.FuncCompiler`1.<>c__DisplayClass2.<CreateBuilder>b__0(IArguments args) in c:\BuildAgent\work\767273992e840853\src\StructureMap\Construction\BuilderCompiler.cs:line
- blob 容器的有效名称
- 端口 1000 已在使用中。
以上都不是真的,因为我尝试了非常简单的名称,而且当我打开存储模拟器时,我可以看到 blob 正在端口 1000 上运行
你们对为什么会发生这种情况有任何想法吗?任何帮助表示赞赏。
更新:
谢谢你们,是的,你们都是对的,问题是存储模拟器版本。安装预览后一切正常。
【问题讨论】:
-
请检查您使用的存储客户端库版本和SDK版本。
-
我还建议将相同的代码指向托管存储帐户,以确保本地存储模拟器不会出现问题。
-
我正在使用最新版本的存储客户端库,每次在 Nuget 上提供新版本时,我都会尝试更新它,所以这可能是我的问题。正如 Serdar Ozler 提到的,我可能必须获得 Azure Storage Emulator 预览版。回到家后,我会尝试并及时通知您。
标签: azure azure-storage azure-blob-storage