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

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(); 
    } 
} 
 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值