Apache HttpClient 4.3 개발 가이드
3270 단어 apache.httpclient4.3HTTP 통신
저자:chszs,전재 설명 이 필요 합 니 다.블 로그 홈 페이지:http://blog.csdn.net/chszs
개술
Apache HttpClient 4 시 리 즈 는 발 표 된 지 오래 되 었 지만 HttpClient 3.x 버 전과 전혀 호 환 되 지 않 아 업계 에서 이 라 이브 러 리 를 사용 하 는 회사 가 적 고 인터넷 에서 도 관련 문서 자 료 를 공유 하지 않 습 니 다.
본 고 는 개발 자가 Apache HttpClient 4.3.x 라 이브 러 리 를 빠르게 시작 할 수 있 도록 간단 한 Apache HttpClient 4.3 개발 안내 서 를 작성 하 는 데 목적 을 둔다.
주의해 야 할 것 은 이 문서 의 코드 가 HttpClient 4.3 버 전보 다 낮은 곳 에서 실 행 될 수 없다 는 것 입 니 다.
2.개발 매 뉴 얼 1.HTTP 클 라 이언 트 만 들 기
CloseableHttpClient client = HttpClientBuilder.create().build();
2.기본 GET 요청 발송
instance.execute(new HttpGet(“http://www.baidu.com”));
3.HTTP 응답 상태 코드 가 져 오기
String url = “http://www.baidu.com”;
CloseableHttpResponse response = instance.execute(new HttpGet(url));
assertThat(response.getStatusLine().getStatusCode(), equalTo(200));
4.응답 을 가 져 오 는 미디어 형식
String url = “http://www.baidu.com”;
CloseableHttpResponse response = instance.execute(new HttpGet(url));
String contentMimeType = ContentType.getOrDefault(response.getEntity()).getMimeType();
assertThat(contentMimeType, equalTo(ContentType.TEXT_HTML.getMimeType()));
5.응답 하 는 BODY 부분 가 져 오기
String url = “http://www.baidu.com”;
CloseableHttpResponse response = instance.execute(new HttpGet(url));
String bodyAsString = EntityUtils.toString(response.getEntity());
assertThat(bodyAsString, notNullValue());
6.설정 요청 시간 초과 설정
@Test(expected=SocketTimeoutException.class)
public void givenLowTimeout_whenExecutingRequestWithTimeout_thenException() throws ClientProtocolException, IOException{
RequestConfig requestConfig = RequestConfig.custom()
.setConnectionRequestTimeout(50).setConnectTimeout(50)
.setSocketTimeout(50).build();
HttpGet request = new HttpGet(SAMPLE_URL);
request.setConfig(requestConfig);
instance.execute(request);
}
7、POST 요청 발송
instance.execute(new HttpPost(SAMPLE_URL));
8.HTTP 설정 변경 요청
CloseableHttpClient instance = HttpClientBuilder.create().disableRedirectHandling().build();
CloseableHttpResponse response = instance.execute(new HttpGet(SAMPLE_URL));
assertThat(reponse.getStatusLine().getStatusCode(), equalTo(301));
9.요청 한 HEADER 부분 설정
HttpGet request = new HttpGet(SAMPLE_URL);
request.addHeader(HttpHeaders.ACCEPT, “application/xml”);
response = instance.execute(request);
10.응답 을 가 져 오 는 HEADER 부분
CloseableHttpResponse response = instance.execute(new HttpGet(SAMPLE_URL));
Header[] headers = response.getHeaders(HttpHeaders.CONTENT_TYPE);
assertThat(headers, not(emptyArray()));
11.자원 을 닫 거나 방출 합 니 다.
response = instance.execute(new HttpGet(SAMPLE_URL));
try{
HttpEntity entity = response.getEntity();
if(entity!=null){
InputStream instream = entity.getContent();
instream.close();
}
} finally{
response.close();
}
상기 내용 은 HttpClient 4.3 의 모든 흔 한 수 요 를 포함 하여 개발 자 에 게 참고 하도록 제공 합 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
자바 파일 압축 및 압축 풀기파일 의 간단 한 압축 과 압축 해 제 를 실현 하 였 다.주요 테스트 용 에는 급 하 게 쓸 수 있 는 부분 이 있 으 니 불편 한 점 이 있 으 면 아낌없이 가르쳐 주 십시오. 1. 중국어 문 제 를 해 결 했 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.