서버에서 다중 경유지 REST API 호출하려고 하는데
{“code”:-2,“msg”:“bad request”}와 같이 에러코드를 반환해서 문의드립니다.
코드를 잘못 작성해서 에러가 나는 것일까요? 요청 파라미터에 문제가 있는걸까요?
원인을 알 수 없어서 아래에 코드 같이 첨부합니다.
감사합니다.
String origin = "127.11024293202674,37.394348634049784";
String destination = "127.11024293202674,37.394348634049784";
StringBuilder urlBuilder = new StringBuilder("https://apis-navi.kakaomobility.com/v1/waypoints/directions?"); /*URL*/
.append( "origin=" + URLEncoder.encode(origin, "UTF-8"))
.append("&" + "destination=" + URLEncoder.encode(destination "UTF-8"))
.append("&" + "waypoints=" + URLEncoder.encode(waypoints, "UTF-8"));
URL url = new URL(urlBuilder.toString());
HttpURLConnection con = (HttpURLConnection)url.openConnection();
String authorization = "KakaoAK" + " " + apikey; // apiKey : 발급받은 REST API 키
con.setRequestMethod("POST");
con.setRequestProperty("Content-Type", "application/json");
con.setRequestProperty("Authorization", authorization);
con.setDoOutput(true);
int responseCode = con.getResponseCode(); //
BufferedReader br;
if(responseCode==200) { // 정상 호출
br = new BufferedReader(new InputStreamReader(con.getInputStream()));
}else { // 에러 발생
br = new BufferedReader(new InputStreamReader(con.getErrorStream()));
}
String inputLine;
StringBuffer res = new StringBuffer();
while ((inputLine = br.readLine()) != null) {
res.append(inputLine);
}
br.close();
System.out.println("result : " + res.toString());