JAVA,模拟HTTP登录

  1. public class TestPost {     
  2.     
  3.     public static void testPost() throws IOException {     
  4.     
  5.         //连接地址  
  6.         String surl = "http://219.238.180.***:80/.../loginservlet?command=login";  
  7.           
  8.         /**   
  9.          * 首先要和URL下的URLConnection对话。 URLConnection可以很容易的从URL得到。比如: // Using   
  10.          *  java.net.URL and //java.net.URLConnection   
  11.          */    
  12.         URL url = new URL(surl);   
  13.         URLConnection connection = url.openConnection();   
  14.           
  15.         /**   
  16.          * 然后把连接设为输出模式。URLConnection通常作为输入来使用,比如下载一个Web页。   
  17.          * 通过把URLConnection设为输出,你可以把数据向你个Web页传送。下面是如何做:   
  18.          */    
  19.         connection.setDoOutput(true);     
  20.         /**   
  21.          * 最后,为了得到OutputStream,简单起见,把它约束在Writer并且放入POST信息中,例如: ...   
  22.          */    
  23.         OutputStreamWriter out = new OutputStreamWriter(connection     
  24.                 .getOutputStream(), "UTF-8");     
  25.         out.write("user_account=admin&user_password=******"); //post的关键所在!     
  26.         // remember to clean up     
  27.         out.flush();     
  28.         out.close();     
  29.         /**   
  30.          * 这样就可以发送一个看起来象这样的POST:    
  31.          * POST /jobsearch/jobsearch.cgi HTTP 1.0 ACCEPT:   
  32.          * text/plain Content-type: application/x-www-form-urlencoded   
  33.          * Content-length: 99 username=bob password=someword   
  34.          */    
  35.         // 一旦发送成功,用以下方法就可以得到服务器的回应:     
  36.         String sCurrentLine;     
  37.         String sTotalString;     
  38.         sCurrentLine = "";     
  39.         sTotalString = "";     
  40.         InputStream l_urlStream;     
  41.         l_urlStream = connection.getInputStream();     
  42.         // 传说中的三层包装阿!     
  43.         BufferedReader l_reader = new BufferedReader(new InputStreamReader(     
  44.                 l_urlStream));     
  45.         while ((sCurrentLine = l_reader.readLine()) != null) {     
  46.             sTotalString += sCurrentLine + "\r\n";     
  47.     
  48.         }     
  49.         System.out.println(sTotalString);     
  50.     }     
  51.     
  52.     public static void main(String[] args) throws IOException {     
  53.     
  54.         testPost();     
  55.     
  56.     }     
  57.     
  58. }    

 

引用自: http://zhoujingxian.iteye.com/blog/439738

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值