HttpClient 사용법 상세 설명
7196 단어 HttpClient사용법
1.프로필
HttpClient 는 Apache Jakarta Common 의 하위 프로젝트 로 효율 적 이 고 최신 이 며 기능 이 풍부 한 HTTP 프로 토 콜 을 지원 하 는 클 라 이언 트 프로 그래 밍 도구 꾸러미 이 며 HTTP 프로 토 콜 의 최신 버 전과 제안 을 지원 합 니 다.HttpClient 는 이미 많은 프로젝트 에 응용 되 었 다.예 를 들 어 Apache Jakarta 에서 유명한 다른 두 개의 오픈 소스 프로젝트 인 Cactus 와 HTMLUnit 은 모두 HttpClient 를 사용 했다.
HttpClient 는 전통 적 인 JDK 자체 의 URLConnection 에 비해 용이 성과 유연성 을 증가 시 켰 다.이 는 클 라 이언 트 가 Http 요청 을 보 내 는 것 이 쉬 울 뿐만 아니 라 개발 자 테스트 인터페이스(Http 프로 토 콜 기반)도 편리 하 게 하고 개발 의 효율 을 향상 시 키 며 코드 의 건장 성 을 향상 시 켰 다.
2.특성
4.1 pom 가 져 오기
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.wo</groupId>
<artifactId>HttpClient_test</artifactId>
<version>1.0-SNAPSHOT</version>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.3.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.5</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.47</version>
</dependency>
</dependencies>
</project>
4.2.get 요청 방식
@RequestMapping("findAll")
public String findAll() throws Exception{
// Http
CloseableHttpClient build = HttpClientBuilder.create().build();
// get
HttpGet httpGet = new HttpGet("http://localhost:8088/lunbo/findAll");
//
CloseableHttpResponse execute = build.execute(httpGet);
//
StatusLine statusLine = execute.getStatusLine();
//
System.out.println(" :"+statusLine.getStatusCode());
String s = EntityUtils.toString(execute.getEntity());
build.close();
execute.close();
return s;
}
4.3 post 요청 방식
//post
@RequestMapping("/findAllPost/{page}/{size}")
public String findAll(@PathVariable("page") int page,@PathVariable("size") int size) throws Exception {
// Http
CloseableHttpClient build = HttpClientBuilder.create().build();
// post
HttpPost httpPost = new HttpPost("http://localhost:8088/position/findAll/"+page+"/"+size);
//
CloseableHttpResponse execute = build.execute(httpPost);
//
StatusLine statusLine = execute.getStatusLine();
//
System.out.println(" :"+statusLine.getStatusCode());
String s = EntityUtils.toString(execute.getEntity());
build.close();
execute.close();
return s;
}
//post map
@RequestMapping("findById")
public String findById(@RequestParam("id") Integer id)throws Exception{
// httpclicent
CloseableHttpClient build = HttpClientBuilder.create().build();
//
HttpPost httpPost = new HttpPost("http://localhost:8088/position/findById");
//
Map map=new HashMap<>();
map.put("id",id);
// map json
Object o = JSONObject.toJSON(map);
//
StringEntity stringEntity = new StringEntity(o.toString(), "utf-8");
//
httpPost.setEntity(stringEntity);
// content-Type
httpPost.setHeader("Content-Type","application/json");
//
CloseableHttpResponse execute = build.execute(httpPost);
//
StatusLine statusLine = execute.getStatusLine();
//
System.out.println(" :"+statusLine.getStatusCode());
String s = EntityUtils.toString(execute.getEntity());
build.close();
execute.close();
return s;
}
HttpClient 사용법 에 대한 자세 한 설명 은 여기까지 입 니 다.HttpClient 사용법 에 관 한 더 많은 내용 은 저희 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 읽 어 주시 기 바 랍 니 다.앞으로 도 많은 응원 부 탁 드 리 겠 습 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
【httpclient】에서의 요구로부터 controller까지의 흐름에 대해서 확인과 리팩토링이전에는 JQuery의 autocomplete, ajax 및 httpclient를 사용하여 자동 완성을 구현했지만 내용에 대해 희미하게만 파악할 수 없었습니다. 리팩토링을 실시하면서 내용을 확인한다. 우선, 외부 A...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.