Java socks实现始终从SOCKS服务器返回格式错误的回复

时间:2013-07-09 07:28:48

标签: java proxy socks

是的,SOverflow中存在类似的问题,但遗憾的是我没有找到任何解决方案。

  

我的目标是:通过JAVA中的socks(v4 | 5)获取网址内容

我的示例代码:

        String result = "";
        SocketAddress addr = new InetSocketAddress("180.211.179.30", 1080);
        Proxy proxy = new Proxy(Proxy.Type.SOCKS, addr);
        URL url = new URL("http://api.exip.org/?call=ip");
        URLConnection conn = url.openConnection(proxy);
        BufferedReader in = new BufferedReader(
                new InputStreamReader(
                conn.getInputStream()));

        StringBuilder response = new StringBuilder();
        String inputLine;

        while ((inputLine = in.readLine()) != null) {
            response.append(inputLine);
        }

        in.close();

        result = response.toString();
        System.out.println(result); 

但它始终返回“java.net.SocketException:来自SOCKS服务器的格式错误的回复”,而它与http(s)代理类型一起使用。

  

线程“main”中的异常java.net.SocketException:格式错误的回复   来自SOCKS服务器   java.net.SocksSocketImpl.readSocksReply(SocksSocketImpl.java:128)at at   java.net.SocksSocketImpl.connect(SocksSocketImpl.java:459)at   java.net.Socket.connect(Socket.java:579)at   java.net.Socket.connect(Socket.java:528)at   sun.net.NetworkClient.doConnect(NetworkClient.java:180)at   sun.net.www.http.HttpClient.openServer(HttpClient.java:378)at   sun.net.www.http.HttpClient.openServer(HttpClient.java:473)at   sun.net.www.http.HttpClient。(HttpClient.java:203)at   sun.net.www.http.HttpClient.New(HttpClient.java:290)at   sun.net.www.http.HttpClient.New(HttpClient.java:306)at   sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:995)     在   sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:974)     在   sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:849)     在   sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1299)     在app.speedproxy.model.utils.TestJava.main(TestJava.java:33)Java   结果:1

我的系统配置:带有Oracle JVM的Ubuntu 12.04

我已经尝试了appache的httpclient和scocketfactory实现,但是发生了同样的异常。 如果你们中的任何人能够反思,我将不胜感激。 感谢。

0 个答案:

没有答案