基于HttpClient 4.5.2
-
执行GET请求
CloseableHttpClient httpClient = HttpClients.custom() .build(); CloseableHttpResponse response = httpClient.execute(new HttpGet("https://www.baidu.com")); System.out.println(EntityUtils.toString(response.getEntity()));
-
执行POST请求
- 提交form表单参数
CloseableHttpClient httpClient = HttpClients.custom() .build(); HttpPost httpPost = new HttpPost("https://www.explame.com"); List<NameValuePair> formParams = new ArrayList<NameValuePair>(); //表单参数 formParams.add(new BasicNameValuePair("name1", "value1")); formParams.add(new BasicNameValuePair("name2", "value2")); UrlEncodedFormEntity entity = new UrlEncodedFormEntity(formParams, "utf-8"); httpPost.setEntity(entity); CloseableHttpResponse response = httpClient.execute(httpPost); System.out.println(EntityUtils.toString(response.getEntity()));
- 提交payload参数
CloseableHttpClient httpClient = HttpClients.custom() .build(); HttpPost httpPost = new HttpPost("https://www.explame.com"); StringEntity entity = new StringEntity("{\"id\": \"1\"}"); httpPost.setEntity(entity); CloseableHttpResponse response = httpClient.execute(httpPost); System.out.println(EntityUtils.toString(response.getEntity()));
- post上传文件
CloseableHttpClient httpClient = HttpClients.custom() .build(); HttpPost httpPost = new HttpPost("https://www.example.com"); MultipartEntityBuilder multipartEntityBuilder = MultipartEntityBuilder.create(); //要上传的文件 multipartEntityBuilder.addBinaryBody("file", new File("temp.txt")); httpPost.setEntity(multipartEntityBuilder.build()); CloseableHttpResponse response = httpClient.execute(httpPost); System.out.println(EntityUtils.toString(response.getEntity()));
- post提交multipart/form-data类型参数
CloseableHttpClient httpClient = HttpClients.custom() .build(); HttpPost httpPost = new HttpPost("https://www.example.com"); MultipartEntityBuilder multipartEntityBuilder = MultipartEntityBuilder.create(); multipartEntityBuilder.addTextBody("username","wycm"); multipartEntityBuilder.addTextBody("passowrd&#
- 提交form表单参数