【问题标题】:Azure Storage - Proxy Setting in Java CodeAzure 存储 - Java 代码中的代理设置
【发布时间】: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();
            

但它并没有解决问题。 我确信这很简单,任何帮助将不胜感激。 谢谢。查尔斯·德·圣安德烈。

    标签: java azure proxy storage


    【解决方案1】:

    您需要配置 ProxyOptions 并在 httpClientBuilder 上设置它们。我们所有的存储客户端构建器都有一个接受客户端的 .httpClient() 方法,您可以使用具有 .proxyOptions() 方法的 NettyAsyncClientBuilder() 构建具有所有默认值 + 代理选项的客户端。请尝试一下,如果您还有其他问题,请告诉我。 示例:azure-sdk-for-java/sdk/storage/azure-storage-blob at main · Azure/azure-sdk-for-java (github.com)

    【讨论】:

      猜你喜欢
      • 2022-01-07
      • 1970-01-01
      • 2021-11-27
      • 2017-01-20
      • 1970-01-01
      • 2019-09-14
      • 2019-11-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多