HttpClient get和HttpClient Post请求的方式获取服务器的返回数据

/*
 * 演示通过HttpClient get请求的方式获取服务器的返回数据
 */
[html]  view plain  copy
  1. public class HttpClientDemo {  
  2.     public static void main(String[] args) throws ClientProtocolException, IOException {  
  3.         String path="http://10.0.184.105:58080/ServletDemo4/LoginServlet?username=admin&password=admin";  
  4.         //1.创建客户端访问服务器的httpclient对象   打开浏览器  
  5.         HttpClient httpclient=new DefaultHttpClient();  
  6.         //2.以请求的连接地址创建get请求对象     浏览器中输入网址  
  7.         HttpGet httpget=new HttpGet(path);  
  8.         //3.向服务器端发送请求 并且获取响应对象  浏览器中输入网址点击回车  
  9.         HttpResponse response=httpclient.execute(httpget);  
  10.         //4.获取响应对象中的响应码  
  11.         StatusLine statusLine=response.getStatusLine();//获取请求对象中的响应行对象  
  12.         int responseCode=statusLine.getStatusCode();//从状态行中获取状态码  
  13.         if(responseCode==200){  
  14.             //5.获取HttpEntity消息载体对象  可以接收和发送消息  
  15.             HttpEntity entity=response.getEntity();  
  16.             //EntityUtils中的toString()方法转换服务器的响应数据  
  17.             String str=EntityUtils.toString(entity, "utf-8");  
  18.             System.out.println("服务器的响应是:"+str);  
  19.               
  20. //          //6.从消息载体对象中获取操作的读取流对象  
  21. //          InputStream input=entity.getContent();  
  22. //          BufferedReader br=new BufferedReader(new InputStreamReader(input));  
  23. //          String str=br.readLine();  
  24. //          String result=new String(str.getBytes("gbk"), "utf-8");  
  25. //          System.out.println("服务器的响应是:"+result);  
  26. //          br.close();  
  27. //          input.close();  
  28.         }else{  
  29.             System.out.println("响应失败!");  
  30.         }  
  31.     }  
  32.   
  33.   
  34. }  


/*
 * 演示HttpClient使用Post提交方式提交数据
 * <form action="" method="post">
 *   <input type="text" name="username" value="输入值">
 *   <input type="password" name="password" value="输入值">
 * </form>
 * 
 *  username=输入值   password=输入值
 */

[html]  view plain  copy
  1. public class HttpClientDemo4 {  
  2.     public static void main(String[] args) throws ClientProtocolException, IOException {  
  3.         String baseUrl="http://10.0.184.105:58080/ServletDemo4/LoginServlet";//username=? password=?  
  4.         HttpClient httpclient=new DefaultHttpClient();  
  5.         //以请求的url地址创建httppost请求对象  
  6.         HttpPost httppost=new HttpPost(baseUrl);  
  7.           
  8.         //NameValuePair 表示以类的形式保存提交的键值对  
  9.         NameValuePair pair1=new BasicNameValuePair("username", "ad");  
  10.         NameValuePair pair2=new BasicNameValuePair("password", "admin");  
  11.         //集合的目的就是存储需要向服务器提交的key-value对的集合  
  12.         List<NameValuePair> listPair=new ArrayList<NameValuePair>();  
  13.         listPair.add(pair1);  
  14.         listPair.add(pair2);  
  15.         //HttpEntity 封装消息的对象 可以发送和接受服务器的消息  可以通过客户端请求或者是服务器端的响应获取其对象  
  16.         HttpEntity entity=new UrlEncodedFormEntity(listPair);//创建httpEntity对象  
  17.         httppost.setEntity(entity);//将发送消息的载体对象封装到httppost对象中  
  18.           
  19.         HttpResponse response=httpclient.execute(httppost);  
  20.         int responseCode=response.getStatusLine().getStatusCode();  
  21.         if(responseCode==200){  
  22.             //得到服务器响应的消息对象  
  23.             HttpEntity httpentity=response.getEntity();  
  24.             System.out.println("服务器响应结果是:"+EntityUtils.toString(httpentity, "utf-8"));  
  25.         }else{  
  26.             System.out.println("响应失败!");  
  27.         }  
  28.     }  
  29.   
  30.   
  31. }  
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值