聽課視頻:https://www.bilibili.com/video/av68932809?p=5
思路分析:先創建httpClient對象,再通過URIBuilder對象根上網址,最后一步帶上一個多個參數。
1核心代碼分:
//1:創建httpClient對象
CloseableHttpClient httpClient = HttpClients.createDefault();
//2:設置請求參數 http://yun.itheima.com/search?keys=Java
//創建URIBuilder
URIBuilder uriBuilder = new URIBuilder("http://yun.itheima.com/search");
//設置一個參數,若設置多個參數 uriBuilder.setParameter("keys", "Java").setParameter("login","userName");
uriBuilder.setParameter("keys", "Java").setParameter("login", "張三同學");
HttpGet httpGet = new HttpGet(uriBuilder.build());
System.out.println("http請求信息:"+httpGet); //返回值: http請求信息: GET http://www.itcast.cn HTTP/1.1
3:具體實現代碼
/** * @version 1.0.0 * @program: recuit_gather * @description: * @author: zhangdaxu * @create: 2020-03-13 14:46 */ public class httpClientStuParam06Test { @Test public void getParam() throws URISyntaxException { System.out.println("測試httpClient配置"); //1:創建httpClient對象 CloseableHttpClient httpClient = HttpClients.createDefault(); //2:設置請求參數 http://yun.itheima.com/search?keys=Java //創建URIBuilder URIBuilder uriBuilder = new URIBuilder("http://yun.itheima.com/search"); //設置一個參數,若設置多個參數 uriBuilder.setParameter("keys", "Java").setParameter("login","userName"); uriBuilder.setParameter("keys", "Java").setParameter("login", "張三同學"); HttpGet httpGet = new HttpGet(uriBuilder.build()); System.out.println("http請求信息:"+httpGet); //返回值: http請求信息: GET http://www.itcast.cn HTTP/1.1 //3:設置請求響應的接收變量,如內容為主及必要信息(host,API,HTTP code,響應code,響應時間等等記錄)。 CloseableHttpResponse response=null; try { response= httpClient.execute(httpGet); if(response.getStatusLine().getStatusCode()==200){ //把得到響應的載體內容,傳遞給變量content String content = EntityUtils.toString(response.getEntity(), "utf8"); //輸出響應內容的長度,暫不輸出 System.out.println("響應得到內容長度為:"+content.length()); } } catch (IOException e) { e.printStackTrace(); } } }
