Skip to main content

개요

Base Account가 연결되고 Coinbase Wallet SDK가 요청을 받으면, 팝업 창에서 keys.coinbase.com을 열고 처리를 위해 요청을 팝업에 전달합니다. Base Account 팝업을 사용할 때 다음 사항을 유의하세요.

기본 차단 동작

  • 대부분의 최신 브라우저는 클릭에 의해 트리거되지 않는 한 기본적으로 모든 팝업을 차단합니다.
  • 팝업이 차단되면 브라우저는 사용자에게 알림을 표시하여 팝업 설정을 관리할 수 있게 합니다.

해결 방법

  • 버튼 클릭과 Base Account 팝업을 여는 요청 사이에 추가적인 로직이 없는지 확인하세요. 브라우저가 요청을 프로그래밍 방식으로 시작된 것으로 인식할 수 있습니다.
  • 로직이 불가피한 경우, 최소화하고 지원되는 모든 브라우저에서 철저히 테스트하세요.

Cross-Origin-Opener-Policy

Base Account 팝업이 열렸을 때 오류나 무한 스피너가 표시된다면, dapp의 Cross-Origin-Opener-Policy 때문일 수 있습니다. Base Account 팝업이 정상적으로 작동할 수 있는 지시문을 사용하세요.
  • ✅ Base Account 팝업이 정상 작동하는 설정
    • unsafe-none (기본값)
    • same-origin-allow-popups (권장)
  • ❌ Base Account 팝업을 중단시키는 설정
    • same-origin
더 자세한 정보는 MDN 문서를 참고하세요.

Base Account 팝업 ‘지연 종료’ 동작

  • 때로는 dapp이 이전 요청에 대한 응답을 기반으로 프로그래밍 방식으로 후속 요청을 할 수 있습니다. 일반적으로 브라우저는 팝업을 여는 이러한 프로그래밍 방식 요청을 차단합니다.
  • 이를 해결하기 위해, Base Account 팝업은 요청에 응답한 후 닫기 전에 200ms 동안 대기하며 다른 수신 요청을 기다립니다.
    • 이 200ms 창 동안 요청이 수신되면, 동일한 팝업 창 내에서 수신되어 처리됩니다.
    • 200ms 창 이후 팝업이 닫힌 후 요청이 수신되면, Base Account 팝업 열기가 브라우저에 의해 차단됩니다.