Eclipse出站连接被阻止:相同的URL可以在Web浏览器中使用

时间:2015-08-03 05:09:48

标签: eclipse connection-refused

我正在使用HttpURLConnection类从eclipse连接到外部Web服务,然后我收到错误消息“Connection Refused”

MemoryStream

但是,如果我尝试从浏览器连接到同一站点,我可以从服务获得响应。如果有解决方法,你能告诉我吗?

2 个答案:

答案 0 :(得分:0)

默认情况下,HttpURLConnection类不允许localhost作为主机名。您需要定义允许localhost的自定义主机名验证程序。您可以将此代码放入您打算使用static的类顶部的HttpURLConnection块中:

public final class YourClassName {
    static {
        //for localhost testing only
        javax.net.ssl.HttpsURLConnection.setDefaultHostnameVerifier(
            new javax.net.ssl.HostnameVerifier(){

                    public boolean verify(String hostname,
                                      javax.net.ssl.SSLSession sslSession) {
                        if (hostname.equals("localhost")) {
                            return true;
                        }
                        return false;
                    }
                });
    }

    // use HttpURLConnection here ...
}

答案 1 :(得分:0)

请找到工作代码,

PROXY_SERVER设置为有效的代理服务器和我正在使用的http的端口是8080

proxy = new Proxy(Proxy.Type.HTTP,new InetSocketAddress(PROXY_SERVER,PROXY_PORT));

当你建立连接时,将代理作为参数传递。

urlConnection =(HttpURLConnection)((新URL(URI).openConnection(proxy)));