[문의] 결제 위젯 > 결제 수단 추가(+ 모양 카드뷰) > 추가 후 화면에 돌아왔을때 위젯이 갱신되지 않음.
이 현상이 100% 재현되는건 아닌데,
간헐적으로 타임 아웃으로 인해 "SDKBridgeError: Bridge의 응답이 없습니다." 발생하여 위젯이 갱신되지 않습니다.
카드뷰도 + 모양 카드뷰에서 멈춰있습니다.
그래서 새로고침을 해야 새롭게 추가한 결제 수단이 노출되거나 위젯을 다시 렌더링 해줘야 정상 작동 합니다.
SDKBridgeError가 났을때 에러를 어떻게 핸들링 해야할까요?
26 Replies
⏳ 잠시만 기다려주세요! 곧 답변드리겠습니다
오류 문의일 경우 아래 정보를 미리 전달해주시면, 빠른 답변에 도움이 됩니다.
- 주문번호(orderId) :
- 문의 내용 :
(img를 함께 첨부해주시면 도움이됩니다)
* 계약관련 내용은 1544-7772로 문의주세요.
* 주말/공휴일에는 답변이 늦을 수 있어요.
브랜드페이도 같이 쓰시나요?
브랜드페이 결제수단 위젯만 사용하고 있습니다.
100%재현되는게 아니면 저희도 정확히 확인이 어렵네요
저희도 확인한번 해보겠습니다.
재현하는 방법을 찾았습니다.
아마도 다시 렌더링을 자주 하면 발생하는것 같습니다.
1) 렌더링을 1번만 했을때
문제 없음
2) 렌더링을 2번 이상 진행했을때
카드 - 카드 렌더링
카드 - 계좌 렌더링
계좌 - 카드 렌더링
2번의 경우,
카드뷰 렌더링 자체에는 문제가 없으나, + 모양 카드뷰를 눌러서 결제 수단 추가 이후 원래 화면에 돌아왔을때 브랜드페이 결제수단 위젯의 갱신이 되지 않음.
렌더링을 다시 한번 수행해줘야 갱신이 진행됨.
혹시 괜찮으시다면 영상 한번 부탁드릴 수 있을까요?
특이사항으로는 렌더가 되어있는 상태에서 렌더링을 한번 더 할 경우
1. 브랜드페이 객체 초기화
2. #tosspayments_brandpay_iframe_widget 셀렉터 remove()
3. .render() 이용하여 한번 더 렌더링
1, 2 과정을 거치는 이유는 렌더링 되어있는 상태에서 3번만 진행하면 SDKBridgeError가 발생하기 때문입니다.
영상은 준비되는 대로 여기에 올리겠습니다
1) 렌더링을 1번만 했을때
문제 없음
2) 렌더링을 2번 이상 진행했을때
2번의 경우,
카드뷰 렌더링 자체에는 문제가 없으나, + 모양 카드뷰를 눌러서 결제 수단 추가 이후 원래 화면에 돌아왔을때 브랜드페이 결제수단 위젯의 갱신이 되지 않음.
렌더링을 다시 한번 수행해줘야 갱신이 진행됨.
해당 영상은 캡쳐 전에 '우체국쇼핑 PAY(카드)'를 2번 눌러서 렌더링을 2번 수행한 상태에서 캡쳐되었습니다.
위에서 말씀드린대로 카드, 계좌 상관없이 렌더링이 2번 이상 이루어질 경우 현상이 재현됩니다
공유 감사합니다
확인 후 회신드리겠습니다
2번 렌더라는게 카드를 연속으로 2번 등록한 상황이신거죠?
아니요, render() 함수를 실행한 횟수 입니다.
체크박스를 선택하면 render() 함수가 실행되서 카드뷰가 노출됩니다.
브랜드페이 JavaScript SDK | 토스페이먼츠 개발자센터
브랜드페이 JavaScript SDK를 추가하고 메서드를 사용하는 방법을 알아봅니다.
체크박스라는게 '우체국쇼핑(PAY카드)' 라디오 버튼을 의미하시고, 해당 클릭할 때마다 render를 하는데 2번 이상 render된 상태로 접근하면 오류가나는 것으로 이해하면 될까요?
맞습니다!
@아메리카노 1호 님 혹시 위젯을 destroy 하신후에 다시 렌더링 해보실수 있을까요?https://docs.tosspayments.com/reference/brandpay-sdk#destroy
브랜드페이 JavaScript SDK | 토스페이먼츠 개발자센터
브랜드페이 JavaScript SDK를 추가하고 메서드를 사용하는 방법을 알아봅니다.
시도해보겠습니다!
❤️ 기술문의 경험이 어떠셨나요?!
간단히 코멘트 남겨주세요! 제품 발전에 큰 힘이 됩니다.
3번 과정(render) 이전에 destroy() 를 실행하니 정상 작동 합니다.
감사합니다!
안녕하세요, 이전에 @냥과장 님이 알려주신 방법대로 처리해서 문제가 없었는데... 최근 들어서 같은 문제가 발생하고 있습니다.
에러 로그와 스크린샷 첨부드립니다.
POST https://log.tosspayments.com/v1/log 400 (Bad Request)message:SDK Bridge has been disposed|exception:undefined|extra:undefined type:SDK-BRIDGE-DISPOSED
내부 확인 후 답변 드리겠습니다.
destroy와 render사이에
getPaymentMethodsgetPaymentParam 호출하는게 있으신가요?
@0american0no1number 지금 이상없는지 확인한번 요청드려요
없습니다!
빠른 대응 감사합니다. 현재는 이상없습니다!
확인 감사합니다.