[JSP] 결제창 카카오나 이니시스 웹표준 결제창 구현 아임포트 api

 ㄱjsp 회원등록,수정,삭제,리스트(CRUD) 로직 구현하기 결제 아임포트

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
  <script>
    $(function(){
        var IMP = window.IMP; // 생략가능
        IMP.init('???????'); // 'iamport' 대신 부여받은 "가맹점 식별코드"를 사용
        var msg;
        
        IMP.request_pay({
            pg : 'inicis',//pg 사선택 결제할곳
            pay_method : 'card'// 지불수단
            merchant_uid : 'merchant_' + new Date().getTime(), //가맹점에서 구별할수잇는 고유id
            name : '<%=name%>',  
            amount : <%=sum%>,   // 가격
        
            //m_redirect_url : 'http://www.naver.com'
        }, function(rsp) { //collback
            if ( rsp.success ) {
                //[1] 서버단에서 결제정보 조회를 위해 jQuery ajax로 imp_uid 전달하기
                jQuery.ajax({
                    url: "/payments/complete"//cross-domain error가 발생하지 않도록 주의해주세요 (가맹점서버)
                    type: 'POST',
                    dataType: 'json',
                    data: {
                        imp_uid : rsp.imp_uid
                        //기타 필요한 데이터가 있으면 추가 전달
                    }
                }).done(function(data) {
                    //[2] 서버에서 REST API로 결제정보확인 및 서비스루틴이 정상적인 경우
                    if ( everythings_fine ) {
                        msg = '결제가 완료되었습니다.';
                        msg += '\n고유ID : ' + rsp.imp_uid;
                        msg += '\n상점 거래ID : ' + rsp.merchant_uid;
                        msg += '\결제 금액 : ' + rsp.paid_amount;
                        msg += '카드 승인번호 : ' + rsp.apply_num;
                        
                        alert(msg);
                    } else {
                        //[3] 아직 제대로 결제가 되지 않았습니다.
                        //[4] 결제된 금액이 요청한 금액과 달라 결제를 자동취소처리하였습니다.
                    }
                });
                //성공시 이동할 페이지
               <%--  location.href='<%=request.getContextPath()%>/order/paySuccess?msg='+msg; --%>
               
               msg = '결제가 완료돼었습니다.'
               
               location.href='<%=request.getContextPath()%>/item/itemList.do'
            } else {
                msg = '결제에 실패하였습니다.';
                msg += '에러내용 : ' + rsp.error_msg;
                //실패시 이동할 페이지
               location.href='<%=request.getContextPath()%>/'
                alert(msg);
            }
        });
        
    });
    </script> 
cs
1
2
3
4
5
6
7
8
9
10
11
    }else if(command.equals("/item/pay.do")) {
            
            System.out.println("들어옴");
            
            RequestDispatcher rd = request.getRequestDispatcher("/item/pay.jsp");
            rd.forward(request, response);
        }
        
        
        
        
cs