android - Android - 为仅现场/现场应用程序添加代理
问题描述
我正在创建一个仅在现场使用的应用程序,这意味着它仅在高安全性层后面使用它。
问题是由于这种安全性,该应用程序无法连接到安装在其服务器上的 Web 服务。我们已经确认使用私有证书会导致问题,我们不断得到javax.net.ssl.SSLPeerUnverifiedException
......证书无法与我们共享,因此我无法将其直接安装到应用程序中。
将安装该应用程序的设备已经具有 VPN,但连接问题仍然存在。建议的解决方法是使用代理和 PAC 文件。我获得了 PAC 文件的链接 ( http://proxy-testcompany.com:3000/testproxy.pac ),但是我如何使用此链接来帮助增强连接以连接到他们的网络服务?
我使用 SOAPHttpTransportSE
这是我迄今为止实施的,但我认为这不是一个合适的解决方案......如果有一个使用代理的解决方案。
InetSocketAddress sa = InetSocketAddress.createUnresolved("http://proxy-testcompany.com:3000/testproxy.pac", 3000);
Proxy proxy = new Proxy(Proxy.Type.HTTP, sa);
androidHttpTransport = new HttpTransportSE(proxy, URL, 50000); // adding proxy
任何建议都会很棒。
解决方案
推荐阅读
- junit - Java GC Overhead Limit Error Using JUnit 5 TestFactory with large stream of dynamicTest (DynamicContainer / DynamicNode)
- react-native - 反应原生导航新手:showInAppNotification 上的全屏宽度?
- electron - Webframe 执行Javascript 传递对象
- extjs - 服务器端如何工作?
- c++ - 使用初始化列表初始化 unique_ptr 的容器,继续
- matlab - 编辑刻度线之间的距离
- docker - 即使服务创建失败,Docker Swarm 服务入口也不会被删除?
- c++ - C++ 将 ppm 转换为 jpeg
- google-chrome - Chrome 开发工具:工具提示未正确显示
- c# - 将不同的材质分配给同一对象上的不同网格