인터넷에 있는 스프링부트 예제를 보고 작성했는데요
400 400 Bad Request가 뜹니다.
public class KakaoPay {
private static final String HOST = “https://kapi.kakao.com”;
private KakaoPayReadyVO kakaoPayReadyVO;
private KakaoPayApprovalVO kakaoPayApprovalVO;
public String kakaoPayReady() {
RestTemplate restTemplate = new RestTemplate();
// 서버로 요청할 Header
HttpHeaders headers = new HttpHeaders();
headers.add("Authorization", "KakaoAK " + "fe0exxxxxxxxxxxxxxx154ea40e6");
headers.add("Accept", MediaType.APPLICATION_JSON_UTF8_VALUE);
headers.add("Content-Type", MediaType.APPLICATION_FORM_URLENCODED_VALUE + ";charset=UTF-8");
// 서버로 요청할 Body
MultiValueMap<String, String> params = new LinkedMultiValueMap<String, String>();
params.add("cid", "TC0ONETIME");
params.add("partner_order_id", "1001");
params.add("partner_user_id", "gorany");
params.add("item_name", "갤럭시S9");
params.add("quantity", "1");
params.add("total_amount", "2100");
params.add("tax_free_amount", "100");
params.add("approval_url", "http://localhost:8080/kakaoPaySuccess");
params.add("cancel_url", "http://localhost:8080/kakaoPayCancel");
params.add("fail_url", "http://localhost:8080/kakaoPaySuccessFail");
HttpEntity<MultiValueMap<String, String>> body = new HttpEntity<MultiValueMap<String, String>>(params, headers);
System.out.println(body);
try {
kakaoPayReadyVO = restTemplate.postForObject(new URI(HOST + "/v1/payment/ready"), body, KakaoPayReadyVO.class);
System.out.println("" + kakaoPayReadyVO);
return kakaoPayReadyVO.getNext_redirect_pc_url();
} catch (RestClientException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return "/pay";
}
혹시나 넘겨가는 파라미터가 다른가해서 검토를 다시 해봤는데 아무리봐도 똑같아서
어떤게 에러인지 모르겠습니다.
<{cid=[TC0ONETIME],
partner_order_id=[1001],
partner_user_id=[gorany],
item_name=[갤럭시S9],
quantity=[1],
total_amount=[2100],
tax_free_amount=[100],
approval_url=[http://localhost:8080/kakaoPaySuccess],
cancel_url=[http://localhost:8080/kakaoPayCancel],
fail_url=[http://localhost:8080/kakaoPaySuccessFail]},
{Authorization=[KakaoAK fe0exxxxxxxxxxxxxxx154ea40e6],
Accept=[application/json;charset=UTF-8],
Content-Type=[application/x-www-form-urlencoded;charset=UTF-8]}>