HttpClient中带参数的get请求

直接代码:

package cn.itcast.crawler.test;import org.apache.http.HttpEntity;import org.apache.http.client.methods.CloseableHttpResponse;import org.apache.http.client.methods.HttpGet;import org.apache.http.client.utils.URIBuilder;import org.apache.http.impl.client.CloseableHttpClient;import org.apache.http.impl.client.HttpClients;import org.apache.http.util.EntityUtils;import java.io.IOException;import java.net.URISyntaxException;public class HttpGetParamTest {    public static void main(String[] args) throws Exception {        //1.创建HttpClient对象          CloseableHttpClient httpClient= HttpClients.createDefault();          //要求:设置请求的地址是:http://yun.itheima.com/search?keys=java        //创建URLBuilder        URIBuilder uriBuilder=new URIBuilder("http://yun.itheima.com/search");        //设置参数        uriBuilder.setParameter("keys","java");          //2.创建HttpGet对象,设置URL地址        HttpGet httpGet=new HttpGet(uriBuilder.build());        System.out.println("发送请求的信息:"+httpGet);        //使用httpClient发起响应获取repsonse        CloseableHttpResponse response=null;        try {            response=httpClient.execute(httpGet);            //4.解析响应,获取数据            //判断状态码是否是200            if(response.getStatusLine().getStatusCode()==200){                HttpEntity httpEntity=response.getEntity();                String content=EntityUtils.toString(httpEntity,"utf8");                System.out.println(content.length());            }        } catch (IOException e) {            e.printStackTrace();        }finally {            try {                response.close();            } catch (IOException e) {                e.printStackTrace();            }            try {                httpClient.close();            } catch (IOException e) {                e.printStackTrace();            }        }    }}执行结果:

HttpClient中带参数的get请求

 有上面的结果可以知道,发送的是一个get请求,并且是参数的;

//创建URLBuilder        URIBuilder uriBuilder=new URIBuilder("http://yun.itheima.com/search");        //设置参数        uriBuilder.setParameter("keys","java");上面两行代码是带参数的主要代码,这是带一个参数,当我们需要带两个或两个以上的参数时,代码如下:
uriBuilder.setParameter("keys","java").setParameter("","");在后面直接添加就可以了