chrome.browsingData

refresh date: 2026-09-25 robots: noindex

설명

chrome.browsingData API를 사용하여 사용자의 로컬 프로필에서 인터넷 사용 기록을 삭제합니다.

권한

browsingData

매니페스트

이 API를 사용하려면 확장 프로그램 매니페스트에서 'browsingData' 권한을 선언해야 합니다.

{
  "name": "My extension",
  ...
  "permissions": [
    "browsingData",
  ],
  ...
}

사용

이 API의 가장 간단한 사용 사례는 사용자의 인터넷 사용 기록을 삭제하는 시간 기반 메커니즘입니다. 코드에서 사용자의 인터넷 사용 기록을 삭제해야 하는 이전 날짜를 나타내는 타임스탬프를 제공해야 합니다. 이 타임스탬프는 유닉스 시간 이후의 밀리초 수로 형식이 지정됩니다(getTime 메서드를 통해 JavaScript Date 객체에서 가져올 수 있음).

예를 들어 지난주에 발생한 사용자의 모든 인터넷 사용 기록을 삭제하려면 다음과 같은 코드를 작성할 수 있습니다.

var callback = function () {
  // Do something clever here once data has been removed.
};

var millisecondsPerWeek = 1000 * 60 * 60 * 24 * 7;
var oneWeekAgo = (new Date()).getTime() - millisecondsPerWeek;
chrome.browsingData.remove({
  "since": oneWeekAgo
}, {
  "appcache": true,
  "cache": true,
  "cacheStorage": true,
  "cookies": true,
  "downloads": true,
  "fileSystems": true,
  "formData": true,
  "history": true,
  "indexedDB": true,
  "localStorage": true,
  "passwords": true,
  "serviceWorkers": true,
  "webSQL": true
}, callback);

chrome.browsingData.remove 메서드를 사용하면 한 번의 호출로 다양한 유형의 인터넷 사용 기록을 삭제할 수 있으며, 더 구체적인 여러 메서드를 호출하는 것보다 훨씬 빠릅니다. 하지만 특정 유형의 인터넷 사용 기록 (예: 쿠키)만 삭제하려는 경우 더 세분화된 메서드를 사용하면 JSON으로 채워진 호출 대신 읽기 쉬운 대안을 제공할 수 있습니다.

var callback = function () {
  // Do something clever here once data has been removed.
};

var millisecondsPerWeek = 1000 * 60 * 60 * 24 * 7;
var oneWeekAgo = (new Date()).getTime() - millisecondsPerWeek;
chrome.browsingData.removeCookies({
  "since": oneWeekAgo
}, callback);

사용자가 데이터를 동기화하는 경우 chrome.browsingData.remove에서 동기화 계정의 쿠키를 삭제한 후 자동으로 다시 빌드할 수 있습니다. 이는 동기화가 계속 작동하여 서버에서 데이터가 최종적으로 삭제될 수 있도록 하기 위함입니다. 하지만 더 구체적인 chrome.browsingData.removeCookies를 사용하여 동기화 계정의 쿠키를 삭제할 수 있으며 이 경우 동기화가 일시중지됩니다.

특정 출처

특정 출처의 데이터를 삭제하거나 삭제에서 출처 집합을 제외하려면 RemovalOptions.origins 및 RemovalOptions.excludeOrigins 매개변수를 사용하면 됩니다. 쿠키, 캐시, 저장소 (CacheStorage, FileSystems, IndexedDB, LocalStorage, ServiceWorkers, WebSQL)에만 적용할 수 있습니다.

chrome.browsingData.remove({
  "origins": ["https://www.example.com"]
}, {
  "cacheStorage": true,
  "cookies": true,
  "fileSystems": true,
  "indexedDB": true,
  "localStorage": true,
  "serviceWorkers": true,
  "webSQL": true
}, callback);

원본 유형

API의 옵션 객체에 originTypes 속성을 추가하면 영향을 받아야 하는 출처 유형을 지정할 수 있습니다. 현재 출처는 세 가지 카테고리로 나뉩니다.

  • unprotectedWeb는 사용자가 특별한 조치를 취하지 않고 방문하는 웹사이트의 일반적인 사례를 다룹니다. originTypes를 지정하지 않으면 API는 기본적으로 보호되지 않은 웹 출처에서 데이터를 삭제합니다.
  • protectedWeb은 호스팅 애플리케이션으로 설치된 웹 출처를 포함합니다. 예를 들어 Angry Birds를 설치하면 출처 https://chrome.angrybirds.com가 보호되고 unprotectedWeb 카테고리에서 삭제됩니다. 이러한 출처의 데이터 삭제를 트리거할 때는 주의해야 합니다. 게임 데이터가 영구적으로 삭제되므로 사용자에게 어떤 결과가 발생하는지 알려야 합니다. 필요 이상으로 돼지 집을 자주 무너뜨리고 싶은 사람은 없으니까요.
  • extension는 chrome-extensions: 스키마의 출처를 포함합니다. 확장 프로그램 데이터를 삭제하는 것도 매우 주의해야 합니다.

다음과 같이 보호된 웹사이트의 데이터만 삭제하도록 이전 예를 조정할 수 있습니다.

var callback = function () {
  // Do something clever here once data has been removed.
};

var millisecondsPerWeek = 1000 * 60 * 60 * 24 * 7;
var oneWeekAgo = (new Date()).getTime() - millisecondsPerWeek;
chrome.browsingData.remove({
  "since": oneWeekAgo,
  "originTypes": {
    "protectedWeb": true
  }
}, {
  "appcache": true,
  "cache": true,
  "cacheStorage": true,
  "cookies": true,
  "downloads": true,
  "fileSystems": true,
  "formData": true,
  "history": true,
  "indexedDB": true,
  "localStorage": true,
  "passwords": true,
  "serviceWorkers": true,
  "webSQL": true
}, callback);

예

이 API를 사용해 보려면 chrome-extension-samples 저장소에서 browsingData API 예를 설치하세요.

유형

DataTypeSet

데이터 유형 집합입니다. 누락된 데이터 유형은 false로 해석됩니다.

속성

  • appcache

    불리언 선택사항

    Chrome 152부터 지원 중단됨

    appcache 지원이 삭제되었습니다. 이 데이터 유형은 무시됩니다.

    웹사이트의 appcache

  • 캐시

    불리언 선택사항

    브라우저의 캐시

  • cacheStorage

    불리언 선택사항

    Chrome 72 이상

    캐시 스토리지

  • 쿠키

    불리언 선택사항

    브라우저의 쿠키

  • 다운로드

    불리언 선택사항

    브라우저의 다운로드 목록입니다.

  • fileSystems

    불리언 선택사항

    웹사이트의 파일 시스템

  • formData

    불리언 선택사항

    브라우저에 저장된 양식 데이터입니다.

  • 기록

    불리언 선택사항

    브라우저 기록

  • indexedDB

    불리언 선택사항

    웹사이트의 IndexedDB 데이터입니다.

  • localStorage

    불리언 선택사항

    웹사이트의 로컬 스토리지 데이터

  • 비밀번호

    불리언 선택사항

    Chrome 144부터 지원 중단됨

    확장 프로그램을 통한 비밀번호 삭제 지원이 삭제되었습니다. 이 데이터 유형은 무시됩니다.

    저장된 비밀번호

  • pluginData

    불리언 선택사항

    Chrome 88부터 지원 중단됨

    Flash 지원이 삭제되었습니다. 이 데이터 유형은 무시됩니다.

    플러그인 데이터입니다.

  • serverBoundCertificates

    불리언 선택사항

    Chrome 76부터 지원 중단됨

    서버 바인딩 인증서 지원이 삭제되었습니다. 이 데이터 유형은 무시됩니다.

    서버 바인딩 인증서

  • serviceWorkers

    불리언 선택사항

    서비스 워커

  • webSQL

    불리언 선택사항

    Chrome 152부터 지원 중단됨

    WebSQL 지원이 삭제되었습니다. 이 데이터 유형은 무시됩니다.

    웹사이트의 WebSQL 데이터입니다.

RemovalOptions

삭제할 데이터를 정확하게 결정하는 옵션입니다.

속성

  • excludeOrigins

    string[] 선택사항

    Chrome 74 이상

    이 목록에 있는 출처의 데이터는 삭제되지 않습니다. origins와 함께 사용할 수 없습니다. 쿠키, 저장소, 캐시에만 지원됩니다. 등록 가능한 전체 도메인에 대해 쿠키가 제외됩니다.

  • originTypes

    객체 선택사항

    삭제해야 하는 출처 유형을 지정하는 속성이 있는 객체입니다. 이 객체를 지정하지 않으면 기본적으로 '보호되지 않은' 출처만 삭제됩니다. 'protectedWeb' 또는 'extensions'를 추가하기 전에 애플리케이션 데이터를 정말로 삭제할 것인지 확인하세요.

    • 확장 프로그램

      불리언 선택사항

      사용자가 설치한 확장 프로그램 및 패키지 애플리케이션 (매우 주의해야 함)

    • protectedWeb

      불리언 선택사항

      호스팅 애플리케이션으로 설치된 웹사이트 (주의 필요)

    • unprotectedWeb

      불리언 선택사항

      일반 웹사이트

  • origins

    [string, …string[]] 선택사항

    Chrome 74 이상

    이 매개변수가 있으면 이 목록에 있는 출처의 데이터만 삭제됩니다. 쿠키, 저장소, 캐시에만 지원됩니다. 등록 가능한 전체 도메인의 쿠키가 삭제됩니다.

  • 이후

    number 선택사항

    이 날짜 이후에 누적된 데이터를 삭제합니다. 에포크 이후 밀리초 단위로 표시됩니다 (JavaScript Date 객체의 getTime 메서드를 통해 액세스 가능). 없는 경우 기본값은 0입니다 (모든 인터넷 사용 기록이 삭제됨).

메서드

remove()

Promise
chrome.browsingData.remove(
  options: RemovalOptions,
  dataToRemove: DataTypeSet,
  callback?: function,
)
: Promise<void>

사용자 프로필에 저장된 다양한 유형의 인터넷 사용 기록을 삭제합니다.

매개변수

  • dataToRemove

    삭제할 데이터 유형 집합입니다.

  • callback

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 약속<void>

    Chrome 96 이상

    삭제가 완료되면 결정됩니다.

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

removeAppcache()

Promise Chrome 152부터 지원 중단됨
chrome.browsingData.removeAppcache(
  options: RemovalOptions,
  callback?: function,
)
: Promise<void>

appcache 지원이 삭제되었습니다. 이 함수는 아무런 영향을 미치지 않습니다.

웹사이트의 appcache 데이터를 삭제합니다.

매개변수

  • callback

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 약속<void>

    Chrome 96 이상

    웹사이트의 appcache 데이터가 삭제되면 확인됩니다.

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

removeCache()

Promise
chrome.browsingData.removeCache(
  options: RemovalOptions,
  callback?: function,
)
: Promise<void>

브라우저의 캐시를 삭제합니다.

매개변수

  • callback

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 약속<void>

    Chrome 96 이상

    브라우저의 캐시가 삭제되면 해결됩니다.

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

removeCacheStorage()

Promise Chrome 72 이상
chrome.browsingData.removeCacheStorage(
  options: RemovalOptions,
  callback?: function,
)
: Promise<void>

웹사이트의 캐시 저장소 데이터를 삭제합니다.

매개변수

  • callback

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 약속<void>

    Chrome 96 이상

    웹사이트의 캐시 스토리지가 삭제되면 해결됩니다.

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

removeCookies()

Promise
chrome.browsingData.removeCookies(
  options: RemovalOptions,
  callback?: function,
)
: Promise<void>

특정 기간 내에 수정된 브라우저의 쿠키 및 서버 바인딩 인증서를 삭제합니다.

매개변수

  • callback

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 약속<void>

    Chrome 96 이상

    브라우저의 쿠키 및 서버 바인딩 인증서가 삭제되면 해결됩니다.

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

removeDownloads()

Promise
chrome.browsingData.removeDownloads(
  options: RemovalOptions,
  callback?: function,
)
: Promise<void>

브라우저의 다운로드 파일 목록을 삭제합니다(다운로드한 파일 자체는 삭제되지 않음).

매개변수

  • callback

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 약속<void>

    Chrome 96 이상

    브라우저의 다운로드된 파일 목록이 삭제되면 결정됩니다.

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

removeFileSystems()

Promise
chrome.browsingData.removeFileSystems(
  options: RemovalOptions,
  callback?: function,
)
: Promise<void>

웹사이트의 파일 시스템 데이터를 삭제합니다.

매개변수

  • callback

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 약속<void>

    Chrome 96 이상

    웹사이트의 파일 시스템이 삭제되면 결정됩니다.

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

removeFormData()

Promise
chrome.browsingData.removeFormData(
  options: RemovalOptions,
  callback?: function,
)
: Promise<void>

브라우저에 저장된 양식 데이터 (자동 완성)를 삭제합니다.

매개변수

  • callback

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 약속<void>

    Chrome 96 이상

    브라우저의 양식 데이터가 삭제되면 해결됩니다.

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

removeHistory()

Promise
chrome.browsingData.removeHistory(
  options: RemovalOptions,
  callback?: function,
)
: Promise<void>

브라우저 기록을 삭제합니다.

매개변수

  • callback

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 약속<void>

    Chrome 96 이상

    브라우저 기록이 삭제되면 결정됩니다.

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

removeIndexedDB()

Promise
chrome.browsingData.removeIndexedDB(
  options: RemovalOptions,
  callback?: function,
)
: Promise<void>

웹사이트의 IndexedDB 데이터를 삭제합니다.

매개변수

  • callback

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 약속<void>

    Chrome 96 이상

    웹사이트의 IndexedDB 데이터가 삭제되면 결정됩니다.

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

removeLocalStorage()

Promise
chrome.browsingData.removeLocalStorage(
  options: RemovalOptions,
  callback?: function,
)
: Promise<void>

웹사이트의 로컬 스토리지 데이터를 삭제합니다.

매개변수

  • callback

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 약속<void>

    Chrome 96 이상

    웹사이트의 로컬 스토리지가 삭제되면 해결됩니다.

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

removePasswords()

Promise Chrome 144부터 지원 중단됨
chrome.browsingData.removePasswords(
  options: RemovalOptions,
  callback?: function,
)
: Promise<void>

확장 프로그램을 통한 비밀번호 삭제 지원이 삭제되었습니다. 이 함수는 아무런 영향을 미치지 않습니다.

브라우저에 저장된 비밀번호를 삭제합니다.

매개변수

  • callback

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 약속<void>

    Chrome 96 이상

    브라우저의 비밀번호가 삭제되면 결정됩니다.

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

removePluginData()

Promise Chrome 88부터 지원 중단됨
chrome.browsingData.removePluginData(
  options: RemovalOptions,
  callback?: function,
)
: Promise<void>

Flash 지원이 삭제되었습니다. 이 함수는 아무런 영향을 미치지 않습니다.

플러그인 데이터를 삭제합니다.

매개변수

  • callback

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 약속<void>

    Chrome 96 이상

    플러그인 데이터가 삭제되면 결정됩니다.

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

removeServiceWorkers()

Promise Chrome 72 이상
chrome.browsingData.removeServiceWorkers(
  options: RemovalOptions,
  callback?: function,
)
: Promise<void>

웹사이트의 서비스 워커를 삭제합니다.

매개변수

  • callback

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 약속<void>

    Chrome 96 이상

    웹사이트의 서비스 워커가 삭제되면 해결됩니다.

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

removeWebSQL()

Promise Chrome 152부터 지원 중단됨
chrome.browsingData.removeWebSQL(
  options: RemovalOptions,
  callback?: function,
)
: Promise<void>

WebSQL 지원이 삭제되었습니다. 이 함수는 아무런 영향을 미치지 않습니다.

웹사이트의 WebSQL 데이터를 삭제합니다.

매개변수

  • callback

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • 약속<void>

    Chrome 96 이상

    웹사이트의 WebSQL 데이터베이스가 삭제되면 해결됩니다.

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.

settings()

Promise
chrome.browsingData.settings(
  callback?: function,
)
: Promise<object>

'인터넷 사용 기록 삭제' 설정 UI에서 현재 선택된 데이터 유형을 보고합니다. 참고: 이 API에 포함된 일부 데이터 유형은 설정 UI에서 사용할 수 없으며, 일부 UI 설정은 여기에 나열된 데이터 유형을 두 개 이상 제어합니다.

매개변수

  • callback

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (result: object) => void

    • 결과

      객체

      • dataRemovalPermitted

        모든 유형이 결과에 표시되며, 삭제가 허용되는 경우 (예: 엔터프라이즈 정책에 따라) 값은 true이고 그렇지 않은 경우 false입니다.

      • dataToRemove

        모든 유형이 결과에 표시되며, 삭제하도록 선택되고 삭제가 허용되는 경우 true 값으로 표시되고 그렇지 않으면 false 값으로 표시됩니다.

반환 값

  • <span class="notranslate">Promise<object></span>

    Chrome 96 이상

    프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.