YesAladin
YesAladin2y ago

"successUrl" 또는 "failUrl"을 넘긴 경우 Promise 방식을 지원하지 않습니다.

안녕하세요 토스 페이먼츠의 api를 통해 개발하고 있는 학생입니다. 개발 중 아래와 같은 오류가 나서 댓글을 남깁니다 "successUrl" 또는 "failUrl"을 넘긴 경우 Promise 방식을 지원하지 않습니다. 현재 window.open()인 새 창 띄우기 함수를 사용하여 새로운 창에서 tossPayments.requestPayment('카드',~~) 프로미스 를 실행하고자 하니 위와같은 오류가 떴습니다. 어떤 이슈로 해당 오류가 발생하는 것인지 와 해결 방법을 공유해주시면 감사드리겠습니다. 감사합니다.
14 Replies
토스페이먼츠 BOT
⏳ 잠시만 기다려주세요! 곧 답변드리겠습니다
오류 문의일 경우 아래 정보를 미리 전달해주시면, 빠른 답변에 도움이 됩니다.
- 주문번호(orderId) : - 문의 내용 :
(img를 함께 첨부해주시면 도움이됩니다)
* 계약관련 내용은 1544-7772로 문의주세요. * 주말/공휴일에는 답변이 늦을 수 있어요.
YesAladin
YesAladin2y ago
No description
코어
코어2y ago
successUrl이나 failUrl을 넘긴다면 결제 후 해당 URL로 이동되기 때문에, promise를 통해 결과값을 받을 수 없어요 .then() 이나 await를 붙여놓으셨다면 삭제해보시기 바랍니다
YesAladin
YesAladin2y ago
No description
YesAladin
YesAladin2y ago
해당 코드와 같이 말씀해주신대로 삭제했지만
YesAladin
YesAladin2y ago
No description
YesAladin
YesAladin2y ago
console.log에 동일한 에러가 발생합니다! promise 방법이 아니면 토스에서 제공해주시는 화면을 쓸수가 없는 것 일까요...?
Deleted User
Deleted User2y ago
Promise 에서는 successUrl, failUrl 파라미터를 제외 하시고 진행 하셔요
YesAladin
YesAladin2y ago
오... 말씀해주신대로 해보니 창이 뜨네요! 그렇다면 해당 결제가 끝나고 난 뒤에는 successUrl이 어디로 설정이 되는 것일까요?
Deleted User
Deleted User2y ago
결제 진행하는 페이지에서 Promise 로 값 응답 받고, 그 값을 프론트에서 백엔드로 값 전달해서 승인 하시면 되고, 승인 다 끝났으면 리다이렉션 하고 싶으면 then 으로 href 리다이렉션 걸어 두세요
YesAladin
YesAladin2y ago
아 그 응답을 받아서 동작시키면 되는 것이군요!! 덕분에 배웠습니다 ㅎㅎ 감사합니다!
Deleted User
Deleted User2y ago
👍😄
토스페이먼츠 BOT
❤️ 기술문의 경험이 어떠셨나요?!
간단히 코멘트 남겨주세요! 제품 발전에 큰 힘이 됩니다.
이실장
이실장2y ago
Promise는 PC에서만 사용 가능한 점도 참고해주세요