gpt4 book ai didi

java - 如何使用 SOCKS 代理或 java 中的任何其他代理通过 SSL 创建与 AMQP 队列的连接

转载 作者:行者123 更新时间:2023-12-01 21:35:26 24 4
gpt4 key购买 nike

使用 SOCKS 代理或任何其他代理,对于无法直接访问互联网或 amqps 连接端口被防火墙阻止的环境,是否有任何方法可以使用 org.apache.qpid.jms.JmsConnectionFactory 通过 SSL 连接到 amqp 队列.

我尝试在互联网可用的环境中使用 org.apache.qpid.jms.JmsConnectionFactory 通过 SSL 连接到 amqp 队列。它工作正常!!!

最佳答案

使用最新版本的 Qpid JMS 客户端(截至本答案为 0.47.0),您可以创建自己的 Netty ProxyHandler 实例,该实例控制客户端如何通过代理进行连接,并在连接扩展上进行配置,如代码中所述here :工厂通过 setter 公开了这一点用于连接扩展。 test case此功能显示了一些用法。

Supplier<ProxyHandler> proxyHandlerSupplier = () -> {
return new Socks5ProxyHandler(new InetSocketAddress("localhost", getPort()));
};

JmsConnectionFactory factory = new JmsConnectionFactory(remoteURI);
factory.setExtension(JmsConnectionExtensions.PROXY_HANDLER_SUPPLIER.toString(), (connection, remote) -> {
return proxyHandlerSupplier;
});

关于java - 如何使用 SOCKS 代理或 java 中的任何其他代理通过 SSL 创建与 AMQP 队列的连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58803510/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com