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. word2010无法显示endnote x7插件及破解endnote x7

    最近本人由于要写文章需要使用endnotex7,相比于mendeley和noteexpress,文献管理和引用我喜欢endnote x7,阅读喜欢mendeley.可是由于之前用的正版30天到期了,破 ...

  2. [JavaEE] Maven简介

    转载自:百度 http://baike.baidu.com/view/336103.htm?fr=aladdin 一.简介 Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构 ...

  3. mysql授予IP远程访问访问语句

    mysql -u root -p; GRANT ALL PRIVILEGES ON *.* TO '用户名'@'你的IP地址' IDENTIFIED BY '密码' WITH GRANT OPTION ...

  4. vs的任务列表

    前几天才刚开始看到这个 很多时候,一些任务,怕忘记了,或者已经做好的东西,由于各种原因,暂时不用等等这种情况 这时候,就可以在vs上,随时加到任务列表中,方面下次直接来修改或实现等等 在vs的视图&g ...

  5. tp5数据库操作 Db类

    一.链接数据库 1.配置文件定义  application\database.php 注意:数据表前缀更改,在文件的prefix选项 2.类定义 二.数据库的基本使用 namespace app\de ...

  6. C++逐行读取文本文件的正确做法

    作者:朱金灿 来源:http://blog.csdn.net/clever101 之前写了一个分析huson日志的控制台程序,其中涉及到C++逐行读取文本文件的做法,代码是这样写的: ifstream ...

  7. pgpool中定义的数据库节点及pgpool支持的复制模式

    /* * The first DB node id appears in pgpool.conf or the first "live" DB * node otherwise.  ...

  8. Win10 UI入门 pivot multiable DataTemplate

    this is a dynamic pivot with sliderable navigation and multiableDatatemplate Control 看了 alexis 大哥的pi ...

  9. ZBrush中SnakeHook蛇钩笔刷介绍

    不同笔刷用着不同的作用,绘画出来的效果也是千姿百态,各有千秋,有些笔刷在使用的时候可以替代,但有些笔刷是无法替代,不可超越的,比如ZBrush®中给我们提供的,SnakeHook笔刷,该笔刷在模型表面 ...

  10. css——样式的继承

    css的样式继承 在上面这段代码中,p{}为父类,b{}为子类.b{}将继承p{}. 因为<b>在<p>里面,p{}为父类,b{}为子类. 继承方式: 如果子类没有,父类有,则 ...