java推送数据,java代理post提交数据(一)

2014-11-24 09:39:51 · 作者: · 浏览: 2

java推送数据,代理post提交数据
网上看到的。。 留下备用。

[java]
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.setParamet