栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java利用HttpClient模拟POST表单操作应用及注意事项

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java利用HttpClient模拟POST表单操作应用及注意事项

HttpClient使用post方法提交数据 源代码:

复制代码 代码如下:
package post;
import Java.io.IOException;
import org.apache.commons.httpclient.Header;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.HttpStatus;
import org.apache.commons.httpclient.NamevaluePair;
import org.apache.commons.httpclient.methods.PostMethod;
public class PostHttp {
 
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  HttpClient httpClient = new HttpClient();
  String url = "http://193.167.13.21/setup.cgi";
  PostMethod postMethod = new PostMethod(url);
//   填入各个表单域的值
  NamevaluePair[] data = {
    new NamevaluePair("ID", "11"),
    new NamevaluePair("mtg", "0"),
    new NamevaluePair("havecookie", "0"),
    new NamevaluePair("backID", "30"),
    new NamevaluePair("psw", "password")
  };
//   将表单的值放入postMethod中
  postMethod.setRequestBody(data);
//   执行postMethod
  int statusCode = 0;
  try {
   statusCode = httpClient.executeMethod(postMethod);
  } catch (HttpException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  } catch (IOException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
//   HttpClient对于要求接受后继服务的请求,象POST和PUT等不能自动处理转发
//   301或者302
  if (statusCode == HttpStatus.SC_MOVED_PERMANENTLY || statusCode == HttpStatus.SC_MOVED_TEMPORARILY)
  {
   //   从头中取出转向的地址
   Header locationHeader = postMethod.getResponseHeader("location");
   String location = null;
   if (locationHeader != null) {
    location = locationHeader.getValue();
    System.out.println("The page was redirected to:" + location);
   }
   else {
    System.err.println("Location field value is null.");
   }
   return;
  }
  else
  {
         System.out.println(postMethod.getStatusLine());
         String str = "";
         try {
               str = postMethod.getResponseBodyAsString();
         } catch (IOException e) {
               // TODO Auto-generated catch block
               e.printStackTrace();
         }       
         System.out.println(str);
  }
  postMethod.releaseConnection();
        return ;
 }
}

//这是一个用户认证过程的登陆信息

其中需要的jar包:

1、commons-httpclient-3.1-rc1.zip http://jakarta.apache.org/commons/httpclient/downloads.html

2、commons-codec-1.3.jar    http://jakarta.apache.org/site/downloads/downloads_commons-codec.cgi

3、commons-logging-api.jar   在tomcat5.5中的Tomcat 5.5/bin目录下或者    http://jakarta.apache.org/site/downloads/downloads_commons-logging.cgi

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/150286.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号