java HttpClient 發送Http請求


所需maven jar包

                <dependency>
			<groupId>org.apache.httpcomponents</groupId>
			<artifactId>httpclient</artifactId>
			<version>4.4.1</version>
		</dependency>
		<dependency>
			<groupId>org.apache.httpcomponents</groupId>
			<artifactId>httpcore</artifactId>
			<version>4.4.1</version>
		</dependency>        

  發出get請求,可調用外部rest接口:

@org.junit.Test
	public void testGet() throws IOException, Exception {
		//創建HttpClient客戶端
		CloseableHttpClient httpClient = HttpClients.createDefault();
		//創建請求方式  post  get  http://localhost:8888/demo/test/
		
		String uri = "http://localhost:8888/demo/test/hello/cc/a";
		HttpGet httpGet = new HttpGet(uri);
		CloseableHttpResponse response = httpClient.execute(httpGet);
		//相應結果
		int statusCode = response.getStatusLine().getStatusCode();
		System.out.println(statusCode);
		
		HttpEntity entity = response.getEntity();
		
		String string = EntityUtils.toString(entity);
		
		System.out.println(string);
		
		response.close();
		httpClient.close();
		
	}

  發出post請求,模擬表單發請求:

@org.junit.Test
	public void testPost() throws IOException, Exception {
		//創建HttpClient客戶端
		CloseableHttpClient httpClient = HttpClients.createDefault();
		//創建請求方式  post  get  
		
		String uri = "http://localhost:8888/demo/test/testPost";
		HttpPost httpPost = new HttpPost(uri);
		
		//創建一個Entity,模擬一個表單
		List<NameValuePair> list = new ArrayList<NameValuePair>();
		list.add(new BasicNameValuePair("id", "1001"));
		list.add(new BasicNameValuePair("name", "小黑"));
		//把表單包裝成一個HttpEntity對象
		HttpEntity stringEntity = new UrlEncodedFormEntity(list,"utf-8");
		//設置請求的內容
		httpPost.setEntity(stringEntity);
		
		CloseableHttpResponse response = httpClient.execute(httpPost);
		//相應結果
		int statusCode = response.getStatusLine().getStatusCode();
		System.out.println(statusCode);
		
		HttpEntity entity = response.getEntity();
		
		String string = EntityUtils.toString(entity);
		
		System.out.println(string);
		
		response.close();
		httpClient.close();
		
	}

  get請求添加其他參數,可參照:

//創建一個uri對象
URIBuilder uriBuilder = new URIBuilder("http://www.sogou.com/web");
uriBuilder.addParameter("query","花千骨");
HttpGet get = new HttpGet(uriBuilder.build());

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM