Qpid JMS Netty prijevoz može dobiti novi proxy rukovatelj putem proširenja veze:

Supplier<ProxyHandler> handlers = () ->
    new Socks5ProxyHandler(
        new InetSocketAddress("proxy.example", 1080));

JmsConnectionFactory factory = new JmsConnectionFactory(
    "amqps://broker.example:5671");
factory.setExtension(
    JmsConnectionExtensions.PROXY_HANDLER_SUPPLIER.toString(),
    (connection, remote) -> handlers);

Supplier i InetSocketAddress su JDK tipovi. Proxy rukovatelji pripadaju Nettyju, a tvornica i enum proširenja organizaciji org.apache.qpid.jms.

Za javno dostupan broker na dopuštenoj javnoj proxy ruti, popis SOCKS5 proxyja nudi kandidate za host i port; potvrdite da odabrani čvor dopušta stvarni host i port brokera. Proširenje vraća dobavljača; svaki poziv dobavljača stvara novi rukovatelj. Vraćanje jednog zarobljenog promjenjivog rukovatelja za više veza prekršilo bi taj raspored vlasništva.

Za SOCKS5 autentifikaciju upotrijebite preopterećenje rukovatelja koje prihvaća korisničko ime i lozinku. Držite broker akreditive na JMS vezi i zadržite stvarni AMQPS broker URI i TLS ime.

Proširenje podržava Netty HTTP, SOCKS4 i SOCKS5 proxy rukovatelje. Za HTTP CONNECT posrednik mora dopustiti ciljni port brokera.

Povezani članci