Java 了解Azure文件存储:UnknownHostException
编辑:我刚刚意识到下面的AccountName指的是一个我尚未创建的存储帐户。我以为这只是我拥有的一般azure“帐户”。令人失望 我正在研究Java/Azure文件存储示例。我遇到了一个问题,我无法找到解决方案: 英文: createFileShare异常:java.net.UnknownHostException:在两次查询后未能解析“我提供的accountname.file.core.windows.net” 我不确定AccountName和AccountKey的确切定义,我认为这是正确的,在较小程度上是正确的 我的目标代码:Java 了解Azure文件存储:UnknownHostException,java,azure,Java,Azure,编辑:我刚刚意识到下面的AccountName指的是一个我尚未创建的存储帐户。我以为这只是我拥有的一般azure“帐户”。令人失望 我正在研究Java/Azure文件存储示例。我遇到了一个问题,我无法找到解决方案: 英文: createFileShare异常:java.net.UnknownHostException:在两次查询后未能解析“我提供的accountname.file.core.windows.net” 我不确定AccountName和AccountKey的确切定义,我认为这是正确的
public static final String connectStr =
"DefaultEndpointsProtocol=https;" +
"AccountName=my-provided-accountname;" +
"AccountKey=87D2A2E999180C4A624E1A8153CEBD6";
public static void main(String[] args) {
SpringApplication.run(AzureFileStorageApplication.class, args);
ShareClient shareClient = new ShareClientBuilder()
.connectionString(connectStr).shareName("testfilestorage")
.buildClient();
createFileShare(connectStr,"hello1A");
}
public static Boolean createFileShare(String connectStr, String shareName)
{
try
{
ShareClient shareClient = new ShareClientBuilder()
.connectionString(connectStr).shareName(shareName)
.buildClient();
shareClient.create();
System.out.println(shareClient);
return true;
}
catch (Exception e)
{
System.out.println("createFileShare exception: " + e.getMessage());
return false;
}
}
首先,您应该创建一个Azure存储帐户 并将其粘贴到代码中。例如:
AccountName=myazurestorageaccount;
AccountKey=87D2A2E999180C4A624E1A8153CEBD6;
创建Azure存储帐户时,获取AccountKey(如下面链接中所述)
并将其粘贴到代码中。例如:
AccountName=myazurestorageaccount;
AccountKey=87D2A2E999180C4A624E1A8153CEBD6;
Java ShareClientBuilder文档描述了使用连接字符串实例化共享客户端。
在这种情况下,您应该附加“EndpointSuffix=core.windows.net”;连接到您的连接
public static final String connectStr =
"DefaultEndpointsProtocol=https;" +
"AccountName=my-provided-accountname;" +
"AccountKey=87D2A2E999180C4A624E1A8153CEBD6;" + "EndpointSuffix=core.windows.net";
结果是Azure不喜欢我用作文件名的camelCase。将其更改为以下操作:
createFileShare(connectStr,"hellishheat");
你们有那个教程的英文链接吗?我提供了一个链接,也许教程这个词太强了。点击上面的“这个”,我的坏;我在德国,chrome自动把我带到了英国。我实际上没有使用Azure文件存储,但我希望URL是
https://.file.core.windows.net/
,而不仅仅是.core
索引8处的权限中的非法字符:。{core.windows.net}我更新了我的答案。端点后缀应不带括号。EndpointSuffix=core.windows.netI删除了这些括号,但仍然:createFileShare异常:java.net.UnknownHostException:在两次查询后未能解析“我的帐户名.file.core.windows.net”。您确定您的存储帐户名为“我的帐户名”吗?Azure存储帐户名只能包含小写字母和数字。我已编辑了该问题,以指出我没有存储帐户。嗯