• Httpclient的使用


    1.使用httpclient执行get请求

    @Test

    public void doGet()throws Exception {

    //创建一个httpclient对象

    CloseableHttpClient httpClient = HttpClients.createDefault();

    //创建一个GET对象

    HttpGet get =new HttpGet("http://www.sogou.com");

    //执行请求

    CloseableHttpResponse response =httpClient.execute(get);

    //取响应的结果

    int statusCode =response.getStatusLine().getStatusCode();

    System.out.println(statusCode);

    HttpEntity entity =response.getEntity();

    String string = EntityUtils.toString(entity,"utf-8");

    System.out.println(string);

    //关闭httpclient

    response.close();

    httpClient.close();

    }

     

    2.执行get请求带参数

    @Test

    public void doGetWithParam()throws Exception{

    //创建一个httpclient对象

    CloseableHttpClient httpClient = HttpClients.createDefault();

    //创建一个uri对象

    URIBuilder uriBuilder = new URIBuilder("http://www.sogou.com/web");

    uriBuilder.addParameter("query","花千骨");

    HttpGet get = new HttpGet(uriBuilder.build());

    //执行请求

    CloseableHttpResponse response =httpClient.execute(get);

    //取响应的结果

    int statusCode =response.getStatusLine().getStatusCode();

    System.out.println(statusCode);

    HttpEntity entity =response.getEntity();

    String string = EntityUtils.toString(entity,"utf-8");

    System.out.println(string);

    //关闭httpclient

    response.close();

    httpClient.close();

    }

    3.使用httpclient执行post请求

    @Test

    public void doPost()throws Exception {

    CloseableHttpClient httpClient = HttpClients.createDefault();

     

    //创建一个post对象

    HttpPost post =new HttpPost("http://localhost:8082/httpclient/post.html");

    //执行post请求

    CloseableHttpResponse response =httpClient.execute(post);

    String string = EntityUtils.toString(response.getEntity());

    System.out.println(string);

    response.close();

    httpClient.close();

     

    }

    4.带参数的post请求

    @Test

    public void doPostWithParam()throws Exception{

    CloseableHttpClient httpClient = HttpClients.createDefault();

     

    //创建一个post对象

    HttpPost post =new HttpPost("http://localhost:8082/httpclient/post.html");

    //创建一个Entity。模拟一个表单

    List<NameValuePair>kvList = new ArrayList<>();

    kvList.add(new BasicNameValuePair("username","zhangsan"));

    kvList.add(new BasicNameValuePair("password","123"));

     

    //包装成一个Entity对象

    StringEntity entity = new UrlEncodedFormEntity(kvList,"utf-8");

    //设置请求的内容

    post.setEntity(entity);

     

    //执行post请求

    CloseableHttpResponse response =httpClient.execute(post);

    String string = EntityUtils.toString(response.getEntity());

    System.out.println(string);

    response.close();

    httpClient.close();

    }

  • 相关阅读:
    javascript有用小技巧—实现分栏显示
    在Apk应用程序内,查找某个Activity。
    NodeJS系列~第一个小例子,实现了request.querystring功能
    IOS开发(objective-c)~开篇有理
    爱上MVC3~布局页的继承与扩展
    我心中的核心组件(可插拔的AOP)~第五回 消息组件
    基础才是重中之重~方法override详解
    数据结构 练习 20-查找 算法
    cocos2d-x适配多分辨率
    VS2010中使用CL快速 生成DLL的方法
  • 原文地址:https://www.cnblogs.com/libo199374/p/8798649.html
Copyright © 2020-2023  润新知