티스토리 뷰
728x90
반응형
자바에서 기본적으로 GET,POST로 JSON API 호출하는 방법에 대해서는 아래 링크를 눌러주세요.
[java] 자바에서 JSON API GET/POST 쉽게 호출하는 방법
ArrayList형식의 data를 넣어서 POST API를 호출하는 방법입니다.
// 파라미터 설명
type: "GET", "POST" 중에 선택
StringURL: API URL
param: API를 호출할 때 전달할 파라미터
/* JSON API */
public Map<String, Object> getApi(String type, String stringURL, JSONObject param) throws IOException {
URL obj = null;
obj = new URL(stringURL); // API URL
HttpURLConnection con = (HttpURLConnection)obj.openConnection();
con.setRequestMethod(type); // GET, POST
con.setRequestProperty("Content-type", "application/json; charset=UTF-8");
con.setDoOutput(true);
// DATA
OutputStreamWriter wr= new OutputStreamWriter(con.getOutputStream());
wr.write(param.toString());
wr.flush();
// API 호출
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream(), "UTF-8"));
String line;
StringBuffer sb = new StringBuffer();
while((line = in.readLine()) != null){
sb.append(line);
}
in.close();
con.disconnect();
String text = sb.toString();
ObjectMapper mapper = new ObjectMapper();
Map<String, Object> map = mapper.readValue(text, Map.class);
return map;
}
이제 API에 사용할 파라미터와 함께 호출하면 끝.
// 파라미터 설정
JSONObject param = new JSONObject();
// 문자열(String) 파라미터 예시
param.put("name", "kim");
param.put("age", 10);
// 리스트 파라미터 예시
JSONArray list = new JSONArray();
JSONObject data = new JSONObject();
data.put("name", "kim");
data.put("age", 10);
list.put(data);
param.put("list", list);
// API 호출
Map<String, Object> result = getApi("POST", "localhost:8080/api", param);
728x90
반응형
'프로그래밍 > Java' 카테고리의 다른 글
Geoserver GIS서비스 개발방법 1 (postgre + geoserver + openlayers) (0) | 2023.08.16 |
---|---|
[java] spring boot maven: mongoDB 연동하기 (0) | 2023.06.28 |
[java] json파일 읽어서 map으로 변환하기 (0) | 2023.04.25 |
[java] 자바에서 CSV파일, JSON파일 불러오는 방법 (0) | 2023.01.23 |
[java] 자바에서 JSON API GET/POST 쉽게 호출하는 방법 (0) | 2023.01.20 |
댓글