java推送数据,代理post提交数据

网上看到的。。 留下备用。


import org.apache.commons.httpclient.*;  import org.apache.commons.httpclient.methods.GetMethod;  import org.apache.commons.httpclient.methods.PostMethod;  import org.apache.commons.httpclient.params.HttpClientParams;  import org.apache.commons.httpclient.params.HttpMethodParams;      import java.awt.image.BufferedImage;    import java.io.InputStream;    import javax.imageio.ImageIO;      public class MyHttpClient {        /** *//**       * Method description       *       *       * @param title 留言标题       * @param name 留言者       * @param Content 内容       * @param proIP 代理IP       * @param port  代理端口       * @param usePro 是否使用代理       */      public synchronized void doSomeThing(String title, String name, String Content, String proIP, int port,              boolean usePro) {            // 构造HttpClient的实例          HttpClient       httpClient   = new HttpClient();          HttpClientParams clientParams = new HttpClientParams();            // 隐藏自己请求相关的信息          clientParams.setParameter("http.useragent", "Mozilla/4.0 (compatible; FIREFOX 9.0; IBM AIX 5)");            // httpClient.getHttpConnectionManager().getParams().setSoTimeout(30 * 1000);          clientParams.setHttpElementCharset("GBK");            HttpState httpState = new HttpState();            httpClient.setParams(clientParams);          httpClient.getParams(), .setParameter(HttpClientParams.HTTP_CONTENT_CHARSET, "GBK");          httpClient.setState(httpState);          clientParams.setVersion(HttpVersion.HTTP_1_1);            // httpClient.getHostConfiguration().setProxy("148.233.159.58", 3128);            if (usePro)    // 使用代理          ...{              httpClient.getHostConfiguration().setProxy(proIP, port);          }            // 创建GET方法的实例          GetMethod getMethod = new GetMethod("http://www.XXXcom/Guestbook/imgchk/validatecode.asp");            // 使用系统提供的默认的恢复策略          getMethod.getParams().setParameter(HttpMethodParams.RETRY_HANDLER, new DefaultHttpMethodRetryHandler());            try ...{                // 执行getMethod              int statusCode = httpClient.executeMethod(getMethod);                // System.out.println(statusCode);              if (statusCode != HttpStatus.SC_OK) {                  System.err.println("Method failed: " + getMethod.getStatusLine());              }    // 读取内容                InputStream inStream = getMethod.getResponseBodyAsStream();                // 处理内容              // System.out.println(new String(responseBody));              BufferedImage iag      = ImageIO.read(inStream);              ImgIdent      imgIdent = new ImgIdent(iag);                // imgIdent.saveJPEG(iag, "C:/ddd.jpg");              String validate = imgIdent.getValidatecode(4);                System.out.println(validate);                PostMethod method  = new PostMethod("http://www.XXX.com/Guestbook/add_msg.asp");              String     connect = Content;              String     Title   = title;                method.setParameter("subject", Title);              method.setParameter("g_name", name);              method.setParameter("companyname", "");              method.setParameter("mail", "");              method.setParameter("homepageurl", "http://");              method.setParameter("pic", "p5.gif");              method.setParameter("validatecode", validate);              method.setParameter("content", connect);    //          if (todo) {              int code = httpClient.executeMethod(method);                // String Stringresponse = new String(method.getResponseBodyAsString().getBytes("8859_1"));              // 打印返回的信息              // System.out.println(Stringresponse);  //          }                method.releaseConnection();    //          System.out.println(iag.getHeight());  //          System.out.println(iag.getWidth());  //          //背景 颜色  //          intBgColor = iag.getRGB(38, 0);  //          System.out.println("intBgColor=" + intBgColor);  //  //  //          intBgColor = iag.getRGB(0, 0);  //          System.out.println("intBgColor=" + intBgColor);          } catch (Exception e) {                // 发生网络异常              e.printStackTrace();          } finally {}            // 释放连接   getMethod.releaseConnection();  }          getMethod.releaseConnection();      }  }