1.转自:https://blog.csdn.net/alinshen/article/details/78221567?utm_source=blogxgwz4

/*
 * 演示通过HttpClient get请求的方式获取服务器的返回数据
 */

  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. //          //6.从消息载体对象中获取操作的读取流对象
  20. //          InputStream input=entity.getContent();
  21. //          BufferedReader br=new BufferedReader(new InputStreamReader(input));
  22. //          String str=br.readLine();
  23. //          String result=new String(str.getBytes("gbk"), "utf-8");
  24. //          System.out.println("服务器的响应是:"+result);
  25. //          br.close();
  26. //          input.close();
  27. }else{
  28. System.out.println("响应失败!");
  29. }
  30. }
  31. }

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

    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. //NameValuePair 表示以类的形式保存提交的键值对
    8. NameValuePair pair1=new BasicNameValuePair("username", "ad");
    9. NameValuePair pair2=new BasicNameValuePair("password", "admin");
    10. //集合的目的就是存储需要向服务器提交的key-value对的集合
    11. List<NameValuePair> listPair=new ArrayList<NameValuePair>();
    12. listPair.add(pair1);
    13. listPair.add(pair2);
    14. //HttpEntity 封装消息的对象 可以发送和接受服务器的消息  可以通过客户端请求或者是服务器端的响应获取其对象
    15. HttpEntity entity=new UrlEncodedFormEntity(listPair);//创建httpEntity对象
    16. httppost.setEntity(entity);//将发送消息的载体对象封装到httppost对象中
    17. HttpResponse response=httpclient.execute(httppost);
    18. int responseCode=response.getStatusLine().getStatusCode();
    19. if(responseCode==200){
    20. //得到服务器响应的消息对象
    21. HttpEntity httpentity=response.getEntity();
    22. System.out.println("服务器响应结果是:"+EntityUtils.toString(httpentity, "utf-8"));
    23. }else{
    24. System.out.println("响应失败!");
    25. }
    26. }
    27. }

HttpClient get和HttpClient Post请求的方式获取服务器的返回数据的更多相关文章

  1. php 请求另一个服务器接口返回数据

    <?php /** * Created by PhpStorm. * User: thinkpad * Date: 2015/7/17 0017 * Time: 13:24 */ class A ...

  2. IOS开发之Post 方式获取服务器数据

    //1.创建post方式的 参数字符串url +(NSString *)createPostURL:(NSMutableDictionary *)params { NSString *postStri ...

  3. 使用基于Android网络通信的OkHttp库实现Get和Post方式简单操作服务器JSON格式数据

     目录 前言 1 Get方式和Post方式接口说明 2 OkHttp库简单介绍及环境配置 3 具体实现 前言 本文具体实现思路和大部分代码参考自<第一行代码>第2版,作者:郭霖:但是文中讲 ...

  4. PHP通过curl向其它服务器发请求并返回数据

    在很多时候,我们都需要请求第三方的服务器来获取一些数据,比如token,比如百度的主动推送,那么我们的php如何实现向第三方服务器发请求呢?我们可以通过curl来实现 首先定义请求的url,然后创建h ...

  5. JS请求服务器,并返回信息,请求过程中不需要跳转页面

    js请求服务器,并返回信息,请求过程中不需要跳转页面 这个可以通过jQuery框架轻松实现,jQuery中包含多种ajax的请求方式,详细可以参考下对应 的API. 你上面定义的按钮类型是submit ...

  6. C#如何通过Socket的方式获取httponly cookie

    正常情况下C#可以使用HttpWebRequest.HttpWebResponse和CookieContainer类来获取Cookie,但是当Cookie设置为httponly,我们就不能用上面的方法 ...

  7. Android使用HttpClient以Post、Get请求服务器发送数据的方式(普通和json)

    讲这个之前,我们先来说说get和post两种请求的区别吧!!! 1. GET提交的数据会放在URL之后,以?分割URL和传输数据,参数之间以&相连,如EditPosts.jsp?name=te ...

  8. HttpClient发送Get和Post请求

    package JanGin.httpClient.demo; import java.io.IOException; import java.io.UnsupportedEncodingExcept ...

  9. 使用HttpClient来异步发送POST请求并解析GZIP回应

    .NET 4.5(C#): 使用HttpClient来异步发送POST请求并解析GZIP回应 在新的C# 5.0和.NET 4.5环境下,微软为C#加入了async/await,同时还加入新的Syst ...

随机推荐

  1. 0x15 KMP

    这个算法本身就不难. poj1961 #include<cstdio> #include<iostream> #include<cstring> #include& ...

  2. kentico在使用局域网ip访问的时候提示Missing license或者Invalid website

    Missing license Requested URL: http://172.31.212.20/kentico10/ License status: Missing license If yo ...

  3. 英语发音规则---V字母

    英语发音规则---V字母 一.总结 一句话总结: 1.V发[v]? voice [vɒɪs] n. 声音 love [lʌv] n. 恋爱 leave [liːv] vt. 离开 very ['ver ...

  4. springMVC+uploadify3.1 文件上传 demo

    uploadify3.1 api 可参考:(点击打开链接) 需要springmvc的jar包 1.upload.jsp(主要代码) <script type="text/javascr ...

  5. Oracle数据库基础(二)

    1.表名命名规则:必须以字母开头,不能超过30个字符,不要有Oracle保留字    2.数据类型      字符型:         char :2000个字符   定长  效率高          ...

  6. android 双击图片变大,缩放功能

    package com.example.administrator.myapplicationphotochange; /** * Created by Administrator on 2016/8 ...

  7. hdu 5375 Gray code 【 dp 】

    dp[i][j]表示第i位取j的时候取得的最大的分数 然后分s[i]是不是问号,s[i-1]是不是问号这大的四种情况讨论 #include<cstdio> #include<cstr ...

  8. POJ 1995 Raising Modulo Numbers 【快速幂取模】

    题目链接:http://poj.org/problem?id=1995 解题思路:用整数快速幂算法算出每一个 Ai^Bi,然后依次相加取模即可. #include<stdio.h> lon ...

  9. CF949B A Leapfrog in the Array 思维题,推理

    题意: Dima是一名初级程序员. 在他的工作中,他经常不断地重复以下操作:从数组中删除每个第二个元素. 有一天,他对这个问题的解决方案感到厌倦,他提出了以下华丽的算法. 假设有一长度为2n的数组,最 ...

  10. 路飞学城Python-Day25