Toss payments 개발자 커뮤니티Tp개커Toss payments 개발자 커뮤니티
Powered by
윤정빈윤
Toss payments 개발자 커뮤니티•3y ago•
32 replies
윤정빈

400 Bad Request: INVALID_REQUEST, 필수 파라미터 누락

https://docs.tosspayments.com/reference/test/v1/payments/confirm/POST
위 API를 Spring Boot에서 사용하려 합니다. 요청을 하면
400 Bad Request: "{"code":"INVALID_REQUEST","message":"필수 파라미터가 누락되었습니다."}"
400 Bad Request: "{"code":"INVALID_REQUEST","message":"필수 파라미터가 누락되었습니다."}"
라는 에러가 나옵니다. 필수 파라미터를 모두 보낸 것 같은데 왜 저 에러가 나오는지 궁금합니다.

아래는 Spring Boot 코드와 요청을 보낼때의 JSON 데이터입니다.

        RestTemplate rest = new RestTemplate();

        HttpHeaders headers = new HttpHeaders();

        String testSecretApiKey = tossPaymentConfig.getTestSecretKey() + ":";
        String encodedAuth = new String(Base64.getEncoder().encode(testSecretApiKey.getBytes(StandardCharsets.UTF_8)));

        headers.setBasicAuth(encodedAuth);
        headers.setContentType(MediaType.APPLICATION_JSON);
        headers.setAccept(Collections.singletonList(MediaType.APPLICATION_JSON));

        JSONObject param = new JSONObject();
        param.put("orderId", orderId);
        param.put("amount", amount);
        param.put("paymentKey", paymentKey);

        //System.out.println(new HttpEntity<>(param, headers));
        return rest.postForEntity(
                PAYMENT_URL + paymentKey,
                new HttpEntity<>(param, headers),
                TossPaymentSuccessDto.class
        ).getBody();
        RestTemplate rest = new RestTemplate();

        HttpHeaders headers = new HttpHeaders();

        String testSecretApiKey = tossPaymentConfig.getTestSecretKey() + ":";
        String encodedAuth = new String(Base64.getEncoder().encode(testSecretApiKey.getBytes(StandardCharsets.UTF_8)));

        headers.setBasicAuth(encodedAuth);
        headers.setContentType(MediaType.APPLICATION_JSON);
        headers.setAccept(Collections.singletonList(MediaType.APPLICATION_JSON));

        JSONObject param = new JSONObject();
        param.put("orderId", orderId);
        param.put("amount", amount);
        param.put("paymentKey", paymentKey);

        //System.out.println(new HttpEntity<>(param, headers));
        return rest.postForEntity(
                PAYMENT_URL + paymentKey,
                new HttpEntity<>(param, headers),
                TossPaymentSuccessDto.class
        ).getBody();

<{"amount":3243,"orderId":"qec1d544-2a34-4f44-ada0-c5213d8fd8da","paymentKey":"e75jWNka9lpP2YxJ4K879ml2Knk5ovVRGZwXLObgyB0vMDm1"},[Authorization:"Basic dGVzdF9za19CYTVQelIwQXJubjlkN3dHRDZ2eHJ2bVluTmVEOg==", Content-Type:"application/json", Accept:"application/json"]>
<{"amount":3243,"orderId":"qec1d544-2a34-4f44-ada0-c5213d8fd8da","paymentKey":"e75jWNka9lpP2YxJ4K879ml2Knk5ovVRGZwXLObgyB0vMDm1"},[Authorization:"Basic dGVzdF9za19CYTVQelIwQXJubjlkN3dHRDZ2eHJ2bVluTmVEOg==", Content-Type:"application/json", Accept:"application/json"]>
토스페이먼츠 개발자센터
토스페이먼츠 개발자센터
Toss payments 개발자 커뮤니티 banner
Toss payments 개발자 커뮤니티Join
Toss payments 개발자 커뮤니티입니다. 결제 연동하며 겪는 기술 문의부터, 결제 시장에 대한 다양한 정보까지 얻어가세요~
15,588Members
Resources
Recent Announcements

Similar Threads

Was this page helpful?

Similar Threads

INVALID_REQUEST, 필수 파라미터 누락 (400)
릴리릴릴리 / ❓┃연동개발-문의
3y ago
현금영수증 api 필수 파라미터 누락
FE꽈베기FFE꽈베기 / ❓┃연동개발-문의
13mo ago
현금영수증 api 필수 파라미터 누락
FE꽈베기FFE꽈베기 / ❓┃연동개발-문의
13mo ago
현금영수증 api 필수 파라미터 누락
timburton77Ttimburton77 / ❓┃연동개발-문의
2y ago