박성원
박성원10mo ago

결제위젯: redirect url 내에 `%23`이 포함되면 안되는 것인가요?

안녕하세요. 결제 위젯을 사용 중입니다. success url과 fail url에 %23 문자열이 포함된 경우에, 결제 처리 후 엉뚱한 곳으로 리다이렉트 시켜주는 것 같아서 문의 드립니다. 상점 ID: tprivatu259 해당 결제 ID: class_20240527213812934592 테스트 환경이었습니다. 결제 처리 후 돌아온 URL이 ${ORIGIN}/curriculum?isBeforeStartAt=all&dayWeekType=all&orderDirection=asc&q=&orderId=class_20240527213812934592&paymentKey=<..redacted..>&amount=105000#1007&panel=curriculum&panelType=payment&lectureId=1007&studentId=1529&tossResult=success&paymentType=NORMAL 이었습니다. 원래 코드에서 의도했던 success url은 ${ORIGIN}/curriculum?isBeforeStartAt=all&dayWeekType=all&orderDirection=asc&q=%231007&panel=curriculum&panelType=payment&lectureId=1007&studentId=1529&tossResult=success 이었고요. &q=%23 사이에 orderIdpaymentKey 같은 걸 끼워넣으려고 하다 생긴 문제가 아닌가... 하고 조심스럽게 추측해봅니다.
5 Replies
토스페이먼츠 BOT
⏳ 잠시만 기다려주세요! 곧 답변드리겠습니다
오류 문의일 경우 아래 정보를 미리 전달해주시면, 빠른 답변에 도움이 됩니다.
- 주문번호(orderId) : - 문의 내용 :
(img를 함께 첨부해주시면 도움이됩니다)
* 계약관련 내용은 1544-7772로 문의주세요. * 주말/공휴일에는 답변이 늦을 수 있어요.
김차장
김차장10mo ago
가능성 있어보입니다. 저도 테스트해볼게요 ?isBeforeStartAt=all&amp;dayWeekType=all&amp;orderDirection=asc&amp;q=&orderId=ATECH-788401&paymentKey=atech20240527221911NgQl9&amount=477#1007&amp;panel=curriculum&paymentType=NORMAL 이렇게 리턴이 되네요, 저는 amount 뒤로는 읽지를 않으니 상관없지만 query param 으로 보냈던 데이터 수신이 덜되신거죠? isBeforeStartAt%3Dall&dayWeekType=all&orderDirection=asc&q=%25231007&panel=curriculum%0A 이 부분을 한번 URL Encode 해서 url_cncode=?isBeforeStartAt%3Dall&dayWeekType=all&orderDirection=asc&q=%25231007&panel=curriculum%0A 이런식으로 세팅하고 받은 값을 다시 URL Decode 했더니 정상 수신되었습니다 근본적인 해결방법은 아니지만 해당 버그(?)를 제품팀과 이야기하려면 시간이 오래 소요될수도 있어서 이런 방법을 추천드립니다.
박성원
박성원OP10mo ago
redirect url에 url_cncode 라는 파라미터로 넘겨주면 된다는 말씀이신가요? 아 이해했습니다. 제가 encode해서 따로 param을 새로 붙인 다음에 돌아왔을 때 그걸 decode하라는 말씀이시군요 감사합니다.
김차장
김차장10mo ago
url_cncode 는 지정되거나 정의된 파라미터가 아닙니다. 제가 임의로 인코딩해서 테스트 해본거에요, 유사한 방식을 사용하시면 해결 가능함을 보여드린걸로 이해해주시면 됩니다
토스페이먼츠 BOT
❤️ 기술문의 경험이 어떠셨나요?!
간단히 코멘트 남겨주세요! 제품 발전에 큰 힘이 됩니다.

Did you find this page helpful?