0

我在这里拥有的是通过 Outlook 连接到 Exchange 服务器的远程用户。他们实际上所做的是通过 HTTPS 连接、使用 SSL 连接到代理服务器,然后访问 Exchange。

作为一个网络人,我知道封装和透明度。是否可以向代理打开 HttpURLConnection (HttpsURLConnection),然后通过它运行我的正常标准问题 JavaMail?基本上,打开到代理服务器的连接,然后,当该连接打开时,就像我直接连接到 Exchange 一样对待。

我知道 JavaMail 本身无法通过代理,这就是我涉及 HttpURLConnection 的原因。

如果这不是此特定设置的标准做法,有人可以对替代方案有所了解吗?

谢谢!

4

2 回答 2

0

这应该是可能的,但是您需要编写自己的SocketFactory并配置 JavaMail 以使用它。SocketFactory 需要使用 HTTP CONNECT 协议命令通过 HTTP 代理服务器建立连接,然后将套接字交给 JavaMail 使用。您可能需要自己编写 HTTP 协议支持,而不是使用 HttpURLConnection。

或者,有一些程序充当 SOCKS 代理服务器并通过 Web 代理服务器转发消息。然后,您可以在 JavaMail 中使用 SOCKS 支持。

于 2013-10-01T18:38:37.920 回答
0

作为一种替代方法,您还可以通过使用javamail4ews直接连接到提供 EWS 的交换服务器并像您一样使用 JavaMail

于 2013-10-10T16:23:19.613 回答