问题: 我正在关注 Azure 快速入门 tutorial至此。我已创建 Azure 帐户和存储帐户。
当尝试执行简单的快速入门时,我在第一次调用 Azure 云时遇到错误。此调用
Azure.Storage.Blobs.BlobServiceClient.CreateBlobContainerAsync(String blobContainerName, PublicAccessType publicAccessType, IDictionary`2 metadata, CancellationToken cancellationToken)
抛出此异常:
(No such host is known.) ---> Azure.RequestFailedException: No such host is known.
代码再简单不过了,所以我有两个问题:
是否可以针对 Azure Blob 数据库运行本地代码?
如果是,配置、版本或某些怪癖可能有什么问题?
代码:
string connectionString = Environment.GetEnvironmentVariable("AZURE_STORAGE_CONNECTION_STRING");
BlobServiceClient blobServiceClient = new BlobServiceClient(connectionString);
string containerName = "quickstartblobs" + Guid.NewGuid().ToString();
//Error occurs here.
BlobContainerClient containerClient = await blobServiceClient.CreateBlobContainerAsync(containerName);
假设我设置了环境变量并完全正确地使用了连接键,那么什么可能导致此错误?
这是我在 DotNetCore 3.1 上使用的客户端库: 包括=“Azure.Storage.Blobs”版本=“12.4.2”
以下是我的 Azure 帐户的 Blob 存储应用程序的设置。
我是云计算的新手,所以请温柔一点。
最佳答案
Is it possible to run local code against an Azure Blob database?
是的,当然。
我可以重现您的错误。问题应该出在您的存储帐户的连接字符串上。
我可以将数据从 azure 存储帐户下载到本地:
string connectionString = "DefaultEndpointsProtocol=https;AccountName=0730bowmanwindow;AccountKey=xxxEndpointSuffix=core.windows.net";
BlobServiceClient myClient = new BlobServiceClient(connectionString);
var container = myClient.GetBlobContainerClient("video");
var blockBlob = container.GetBlobClient("test.txt");
blockBlob.DownloadTo("C:\\Users\\bowmanzh\\Desktop\\123.txt");
Console.WriteLine("Hello World!");
请从这里复制连接字符串,确保帐户名等没有问题:
如果还是不行,您可以尝试使用另一台机器。你的代码看起来没有问题。
关于azure - 从本地环境连接到 Azure Blob,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61994665/