现有的用HTTPConnection的方法setProxyServer实现
System.getProperties().put( "proxySet", "true" );
System.getProperties().put( "proxyHost", "代理地址" );
System.getProperties().put( "proxyPort", "代理端口" );
因为是System静态方法,预编译的。所以不管设置多少次,在程序运行的时候,一定是最后一次的设置生效。这样就不能切换代理逐一验证了。不知道有谁做过类似领域的项目,请指点一下

解决方案 »

  1.   

    HTTPConnection conn=...
    conn.setRequestProperty( "proxySet", "true");
    conn.setRequestProperty( "proxyHost", "代理地址");
    conn.setRequestProperty( "proxyPort", "代理端口" );
      

  2.   

    To liu_you(滴水藏海) :
    conn.setRequestProperty( "proxySet", "true");
    conn.setRequestProperty( "proxyHost", "代理地址");
    conn.setRequestProperty( "proxyPort", "代理端口" );
    是直接在http头设置把,我这边这样子写好像不行,代理不生效,不知道你是否实验过代码。另外,HTTPConnection 是通过HttpClient获得的吧。不过好像有两个HttpClient,一个是http://www.innovation.ch/java/HTTPClient/那边的,还有一个是Jakarta Commons HttpClient 。不知道你应用的是哪一个。
      

  3.   

    System.setProperty(key,value);
    这样多次设置不行么?
      

  4.   

    System.setProperty(key,value);
    同步的时候会有问题.
      

  5.   

    用Java编写通过代理访问的应用程序http://tech.sina.com.cn/s/2004-11-12/1354458406.shtml具体还可以参考:
    http://www.google.com/search?sourceid=navclient&hl=zh-CN&ie=UTF-8&rls=GGLD,GGLD:2005-25,GGLD:zh-CN&q=Authorization+setRequestProperty
      

  6.   

    原来你还想多线程的进行验证呀?
    那么你想想,这个System的property必须是在同步代码里面的啊。
      

  7.   

    to jFresH_MaN(十一月的萧邦-夜曲) :
    System.setProperty(key,value);是静态方法,在运行前就预编译过了。所以多次设置他也会默认为最后一次生效。to liu_you(滴水藏海) :
    请问刚才我提的问题,你能回答一下吗?
    1、不知道你是否实验过你贴的代码?
    2、你是否用HttpClient,是的话,是使用哪个HttpClient?另外我的jdk是使用1.4.2的,应该不会有问题吧
      

  8.   

    to jFresH_MaN(十一月的萧邦-夜曲) :
    System.setProperty(key,value);是静态方法,在运行前就预编译过了。所以多次设置他也会默认为最后一次生效。
    ------
    当然是使用最后一次的设置啊。
    你是设置一次验证一个,然后再设置再验证啊
      

  9.   

    今天是周末,我下周一再结贴把。经过下午的努力,用http://www.innovation.ch/java/HTTPClient/下载的httpclient
    HTTPConnection.setProxyServer(proxyHost, proxyPort);
    能够实现多代理替换了,现在困扰在不能改变http请求头。
    本来用HttpURLConnection来实现连接的话,conn.setRequestProperty("Accept","*/*");就能很轻松的改变http请求头,现在改用HTTPConnection类后,找不到改变head的方法了,郁闷
      

  10.   

    to楼主:
    请问刚才我提的问题,你能回答一下吗?
    1、不知道你是否实验过你贴的代码?
    2、你是否用HttpClient,是的话,是使用哪个HttpClient?末有,实现BASIC认证的时候翻过这些资料,嘿嘿...