Jedis与代理连接

时间:2018-01-10 14:16:15

标签: java proxy redis nosql jedis

我使用Jedis,我无法直接连接到Redis,我必须使用代理。 我可以使用socks代理连接到Redis Jedis吗?

请帮助我。

问候。

1 个答案:

答案 0 :(得分:0)

我一直在寻找解决方案,但找不到任何解决方案。因此,我进行了以下更改以解决此问题:

 @NotNull
    private ProxySelector proxySelector() {
        return new ProxySelector() {
            @Override
            public List<Proxy> select(URI uri) {
                List<Proxy> proxies = new LinkedList<>();
                InetSocketAddress socketAddress =
                    new InetSocketAddress(proxyHost, proxyPort);
                proxies.add(new Proxy(Type.HTTP, socketAddress));
                return proxies;
            }

            @Override
            public void connectFailed(URI uri, SocketAddress sa, IOException e) {
                log.error(String.format(
                    "Connection to proxy server %s with socket address %s failed with error. %s",
                    uri, sa, e));
            }
        };
    }

,然后设置默认的代理选择器: ProxySelector.setDefault(proxySelector());