【发布时间】:2022-08-08 12:49:46
【问题描述】:
在 java 服务中,我试图在 azure 存储目录中上传文件;因此我写了这样的代码:
import com.azure.core.util.*;
import com.azure.storage.file.share.*;
import com.azure.storage.file.share.models.*;
//Create connexion string
String connectStr =\"DefaultEndpointsProtocol=https;AccountName=\" + accountName + \";AccountKey=\" + accountKey + \";EndpointSuffix=\" + endpoint;
//ShareDirectoryClient
ShareDirectoryClient dirClient = new ShareFileClientBuilder().connectionString(connectStr).shareName(shareName).resourcePath(directoryName).configuration(proxyOptions).buildDirectoryClient();
// Create empty file
dirClient.createFile(fileName, body.length());
HTTPS 请求必须通过代理服务器,所以,我收到此错误:
\"无法运行 \'sendFileInDirectoryProxyTest\' reactor.core.Exceptions$ReactiveException:io.netty.channel.AbstractChannel$AnnotatedConnectException:连接超时:没有更多信息:\”
我无法设置/使用全局设置。 为了在 Java 代码中设置代理,我尝试了几件事,比如使用配置类:
Configuration configuration = new Configuration();
configuration.put(\"java.net.useSystemProxies\", \"true\");
configuration.put(\"https.proxyHost\", \"xxxxxxxxx\");
configuration.put(\"https.proxyPort\", \"xxxx\");
ShareDirectoryClient dirClient = new ShareFileClientBuilder().connectionString(connectStr).shareName(shareName).resourcePath(directoryName).configuration(configuration).buildDirectoryClient();
但它并没有解决问题。 我确信这很简单,任何帮助将不胜感激。 谢谢。查尔斯·德·圣安德烈。