Nastavení proxy XMPP v Smack 4.4 s ProxyInfo
Připojte ProxyInfo k sestavovači připojení XMPP se samostatným nastavením proxy, domény služby a hostitele serveru.
Nakonfigurujte připojení, které skutečně přenáší proud XMPP. Nastavení proxy na nesouvisející URLConnection nepřesměruje TCP připojení Smack ke službě zasílání zpráv.
Smack 4.4 poskytuje továrny ProxyInfo pro HTTP, SOCKS4 a SOCKS5. Připojte výsledný objekt k sestavovači připojení XMPP:
import org.jivesoftware.smack.ConnectionConfiguration;
import org.jivesoftware.smack.proxy.ProxyInfo;
import org.jivesoftware.smack.tcp.XMPPTCPConnectionConfiguration;
ProxyInfo proxy = ProxyInfo.forSocks5Proxy(
"proxy.example.net", 1080, proxyUser, proxyPassword
);
XMPPTCPConnectionConfiguration config =
XMPPTCPConnectionConfiguration.builder()
.setXmppDomain("chat.example.net")
.setHost("xmpp-node.example.net")
.setPort(5222)
.setProxyInfo(proxy)
.setSecurityMode(
ConnectionConfiguration.SecurityMode.required
)
.build();Toto je fragment konfigurace pro existující nastavení Smack 4.4. Okolní aplikace zpracovává kontrolované výjimky sestavovače a dodává přihlašovací údaje proxy. Explicitní hostitel a port označují skutečný TCP koncový bod služby XMPP.
Existují tři názvy s odlišnými rolemi:
proxy.example.netje prostředník, který přijímá počáteční připojení.xmpp-node.example.netje koncový bod serveru, k němuž má proxy dosáhnout.chat.example.netje doména služby XMPP, například doména za@v JID účtu.
Služba může pro poslední dva použít stejný název, ale název hostitele proxy nenahrazuje ani jeden z nich. Zachovejte zamýšlenou identitu služby XMPP v připojení a v jeho ověřování TLS.
Pro proxy HTTP použijte ProxyInfo.forHttpProxy s odpovídajícím portem proxy a přihlašovacími údaji. Tato cesta vyžaduje proxy schopnou tunelovat připojení XMPP a povolit jeho cílový port. Proxy, která obsluhuje webové prohlížení přes HTTPS, automaticky nepovoluje TCP připojení ke službě XMPP na 5222.
Povinný bezpečnostní režim ve fragmentu činí z TLS podmínku připojení XMPP. Nevykonává ověřování proxy a přihlašovací údaje proxy se nepřihlašují k účtu XMPP. Nakonfigurujte účet XMPP běžným autentizačním tokem Smack po navázání trasy a zabezpečené relace.
Udržujte příklady v rámci jejich generace API. Starší příklady ConnectionConfiguration založené na konstruktoru vyjadřují stejný koncept směrování, ale sestavovač Smack 4.4 je rozhraní použité zde. Není třeba reprodukovat názvy hostitelů zastaralého poskytovatele zpráv, abyste tento koncept použili na současnou službu XMPP.