> ## Documentation Index
> Fetch the complete documentation index at: https://daehan-base.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# 팝업 팁

> Base Account 팝업 관련 브라우저 동작과 문제 해결 방법을 안내합니다.

## 개요

Base Account가 연결되고 Coinbase Wallet SDK가 요청을 받으면, 팝업 창에서 [keys.coinbase.com](https://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 문서](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cross-Origin-Opener-Policy)를 참고하세요.

## Base Account 팝업 '지연 종료' 동작

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