java - 代理背后的 Azure Blob 存储 sdk v10/v11 快速入门错误
问题描述
我已经从 github 下载并运行了提供的 quickstat。它在正常网络上运行良好,但如果在代理后面则提供 NPE。
WARNING: An exception was thrown by com.microsoft.rest.v2.http.NettyClient$AcquisitionListener.operationComplete()
java.lang.NullPointerException
at com.microsoft.rest.v2.http.NettyClient$AcquisitionListener.emitError(NettyClient.java:426)
当我更新到 v11 (11.0.1) 时,会出现一个新错误而不是 NPE,但根本不起作用。
WARN NettyClient - Error emitted before channel is created. Message: This is usually a temporary error during hostname resolution and means that the local server did not receive a response from an authoritative server
我搜索了很多,并尝试在操作环境中设置默认代理,但没有成功。
OperationContext.setDefaultProxy(new Proxy(Proxy.Type.HTTP, new InetSocketAddress(proxyIP, proxyPort)));
你能给我一个在代理后面工作的更新(更正)的快速入门吗?或者给我一些线索如何,设置什么以及在哪里?
解决方案
据我所知,根据Oracle文档Java Networking and Proxies
,在代理之外访问的简单方法是在Java中设置http[s].proxyHost
和http[s].proxyPort
通过System.setProperty
,以使JVM上的所有程序都在代理后面工作。它适用于我的答案,使用较旧的 Azure Storage SDK 用于其他 SO 线程Get Image from Azure Blob using Proxy In Java。
推荐阅读
- gitlab - Git Lab - 每月安排 MR
- linux-kernel - 为什么在 Linux 虚拟文件系统中,s_blocksize_bits 比普通二进制文件少一位?
- python-3.x - 自动尺寸注释框
- javascript - 小discord.js头像图片
- android - setSupportActionBar() 在 android studio 4.0 中不起作用
- firebase - 如何在 Firestore 中使用 WhereIn?
- apache-spark - 使用 Apache Spark 将数据存储导出到 GCS Bucket 中的 DATASTORE_BACKUP
- mysql - MySQL:删除 WordPress 上传路径之间的数字字符串
- xamarin - 如果是多个数组列表,我可以将它们存储在某处并调用它们,还是需要为每个 AL 创建单独的类
- sql - AND 的参数必须是布尔类型,而不是整数类型