Java + Spring framework 에서 CURL 처럼 리턴 받을 데이터 없이 다른 API 를 호출 할 일이 생겼다.
일반 Http 통신을 하기보다는 CURL 처럼 쓕 보내보고 싶었는데,
생각만큼 소스를 가볍게 짜기엔 어려운 것 같았고 아래가 최선이었다.
public void sendOtherApi(Object sendObj) {
try {
// POST 메소드 URL 생성 & header setting
HttpClient client = HttpClientBuilder.create().build();
HttpPost postRequest = new HttpPost("http://localhost:8080/test/curlConnect");
postRequest.setHeader("Accept", MediaType.APPLICATION_JSON_VALUE);
postRequest.setHeader("Connection", "keep-alive");
postRequest.setHeader("Content-Type", MediaType.APPLICATION_JSON_VALUE);
// post body setting
ObjectMapper mapper = new ObjectMapper();
postRequest.setEntity(new StringEntity(mapper.writeValueAsString(sendObj)));
// CURL execute
client.execute(postRequest);
} catch (Exception e){
log.error(ExceptionUtils.getStackTrace(e));
}
}
위와 같이 HttpClient 와 HttpPost 로 POST 통신하는 방법이 있었다. 끄적끄적 :)
반응형
'Backend > JAVA' 카테고리의 다른 글
[Java] Root(/) path 진입 시 Swagger 로 이동시키는 방법 (0) | 2021.07.14 |
---|---|
[JAVA] SHA256 암호화 Util (0) | 2021.01.13 |
[JAVA] byte[] to File, File to MultipartFile (fin. byte[] to MultipartFile) (0) | 2020.09.09 |
[JAVA] List 반복문 안에서 객체 remove (feat.ConcurrentModificationException) (0) | 2020.08.06 |
[JAVA] 객체(Model) 를 통으로 화면에 찍기 (대체:@Data, .toString()) (0) | 2020.05.11 |
댓글