chrome.downloads

설명

chrome.downloads API를 사용하여 프로그래매틱 방식으로 다운로드를 시작, 모니터링, 조작, 검색합니다.

권한

downloads

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

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

chrome.downloads API 사용의 간단한 예는 examples/api/downloads 디렉터리에서 찾을 수 있습니다. 다른 예와 소스 코드 보기에 대한 도움말은 샘플을 참조하세요.

유형

BooleanDelta

속성

  • 현재

    부울 선택사항

  • 이전

    부울 선택사항

DangerType

파일

다운로드 파일 이름이 의심스럽습니다.

url

이 다운로드의 URL이 악성인 것으로 알려져 있습니다.

콘텐츠의

다운로드한 파일이 악성인 것으로 알려져 있습니다.

특수

이 다운로드 URL은 일반적으로 다운로드되지 않으므로 위험할 수 있습니다.

호스트

이 다운로드는 악성 바이너리를 배포하는 것으로 알려진 호스트에서 제공되었으며 위험할 가능성이 높습니다.

원치 않는

원치 않는 다운로드이거나 안전하지 않을 수 있습니다. 예를 들어 브라우저 또는 컴퓨터 설정이 변경될 수 있습니다.

안전

다운로드 시 사용자의 컴퓨터에 알려진 위험이 없습니다.

허용됨

사용자가 위험한 다운로드를 수락했습니다.

enum

"allowlistedByPolicy"

"blockedTooLarge"

"sensitiveContentWarning"

"sensitiveContentBlock"

"deepScannedSafe"

"promptForScanning"

"promptForLocalPasswordScanning"

"blockedScanFailed"

DoubleDelta

속성

  • 현재

    number 선택사항

  • 이전

    number 선택사항

DownloadDelta

속성

  • canResume

    BooleanDelta 선택사항

    canResume의 변경사항입니다(있는 경우).

  • 위험

    StringDelta 선택사항

    danger의 변경사항입니다(있는 경우).

  • endTime

    StringDelta 선택사항

    endTime의 변경사항입니다(있는 경우).

  • error

    StringDelta 선택사항

    error의 변경사항입니다(있는 경우).

  • 존재함

    BooleanDelta 선택사항

    exists의 변경사항입니다(있는 경우).

  • fileSize

    DoubleDelta 선택사항

    fileSize의 변경사항입니다(있는 경우).

  • filename

    StringDelta 선택사항

    filename의 변경사항입니다(있는 경우).

  • finalUrl

    StringDelta 선택사항

    Chrome 54 이상

    finalUrl의 변경사항입니다(있는 경우).

  • id

    숫자

    변경된 DownloadItemid입니다.

  • 마임

    StringDelta 선택사항

    mime의 변경사항입니다(있는 경우).

  • 일시중지됨

    BooleanDelta 선택사항

    paused의 변경사항입니다(있는 경우).

  • startTime

    StringDelta 선택사항

    startTime의 변경사항입니다(있는 경우).

  • state

    StringDelta 선택사항

    state의 변경사항입니다(있는 경우).

  • totalBytes

    DoubleDelta 선택사항

    totalBytes의 변경사항입니다(있는 경우).

  • url

    StringDelta 선택사항

    url의 변경사항입니다(있는 경우).

DownloadItem

속성

  • byExtensionId

    문자열 선택사항

    이 다운로드가 확장 프로그램에 의해 시작된 경우 이 다운로드를 시작한 확장 프로그램의 식별자입니다. 한 번 설정되면 변경되지 않습니다.

  • byExtensionName

    문자열 선택사항

    이 다운로드가 확장 프로그램에 의해 시작된 경우 이 다운로드를 시작한 확장 프로그램의 현지화된 이름입니다. 확장 프로그램이 이름을 변경하거나 사용자가 언어를 변경하는 경우 변경될 수 있습니다.

  • bytesReceived

    숫자

    파일 압축을 고려하지 않고 호스트에서 지금까지 수신된 바이트 수입니다.

  • canResume

    boolean

    다운로드가 진행 중이고 일시중지된 경우 true입니다. 또는 다운로드가 중단되어 중단된 지점부터 다시 시작할 수 있는 경우 true입니다.

  • 위험

    이 다운로드가 안전한지 또는 의심스러운지 알려진지를 표시합니다.

  • endTime

    문자열 선택사항

    다운로드가 완료된 시간입니다(ISO 8601 형식). 날짜 생성자에 직접 전달할 수 있습니다. chrome.downloads.search({}, function(items){items.forEach(function(item){if (item.endTime) console.log(new Date(item.endTime))})})

  • error

    InterruptReason 선택사항

    다운로드가 중단된 이유 SERVER_로 시작하는 오류 중 하나 아래에 여러 가지 HTTP 오류가 그룹화될 수 있습니다. 네트워크 관련 오류는 NETWORK_로 시작하고, 파일 시스템에 파일을 쓰는 프로세스와 관련된 오류는 FILE_로 시작하며, 사용자가 시작한 중단은 USER_로 시작됩니다.

  • estimatedEndTime

    문자열 선택사항

    ISO 8601 형식으로 다운로드가 완료되는 예상 시간입니다. 날짜 생성자에 직접 전달할 수 있습니다. chrome.downloads.search({}, function(items){items.forEach(function(item){if (item.estimatedEndTime) console.log(new Date(item.estimatedEndTime))})})

  • 존재함

    boolean

    다운로드한 파일이 아직 존재하는지 여부입니다. Chrome이 자동으로 파일 삭제를 감시하지 않기 때문에 이 정보는 최신 정보가 아닐 수 있습니다. search()를 호출하여 파일 존재 확인을 트리거합니다. 존재 여부 확인이 완료된 후 파일이 삭제된 경우 onChanged 이벤트가 실행됩니다. search()는 반환하기 전에 존재 여부 확인이 완료될 때까지 기다리지 않으므로 search()의 결과가 파일 시스템을 정확하게 반영하지 않을 수 있습니다. 또한 search()은 필요한 만큼 자주 호출될 수 있지만 파일 존재 여부를 10초마다 한 번 이상 확인하지 않습니다.

  • fileSize

    숫자

    압축 해제 후 전체 파일의 바이트 수 또는 알 수 없는 경우 -1입니다.

  • filename

    문자열

    절대 로컬 경로입니다.

  • finalUrl

    문자열

    Chrome 54 이상

    모든 리디렉션 후 이 다운로드가 이루어진 절대 URL입니다.

  • id

    숫자

    브라우저 세션 전체에서 유지되는 식별자입니다.

  • 시크릿 모드

    boolean

    다운로드가 기록에 기록되면 false, 기록되지 않으면 true입니다.

  • 마임

    문자열

    파일의 MIME 유형입니다.

  • 일시중지됨

    boolean

    다운로드가 호스트에서 데이터 읽기를 중지했지만 연결은 열린 상태로 유지한 경우 true입니다.

  • referrer

    문자열

    절대 URL입니다.

  • startTime

    문자열

    다운로드가 시작된 시간(ISO 8601 형식)입니다. 날짜 생성자에 직접 전달할 수 있습니다. chrome.downloads.search({}, function(items){items.forEach(function(item){console.log(new Date(item.startTime))})})

  • state

    다운로드가 진행 중인지, 중단되었는지 또는 완료되었는지를 나타냅니다.

  • totalBytes

    숫자

    파일 압축을 고려하지 않은 전체 파일의 바이트 수 또는 알 수 없는 경우 -1입니다.

  • url

    문자열

    리디렉션 전에 이 다운로드가 시작된 절대 URL입니다.

DownloadOptions

속성

  • body

    문자열 선택사항

    게시물 본문

  • conflictAction

    filename가 이미 있는 경우 취할 작업입니다.

  • filename

    문자열 선택사항

    다운로드한 파일을 포함하는 다운로드 디렉토리의 상대 파일 경로로, 하위 디렉토리를 포함할 수 있습니다. 절대 경로, 빈 경로, 역참조('..')를 포함하는 경로를 사용하면 오류가 발생합니다. onDeterminingFilename를 사용하면 파일의 MIME 유형 및 임시 파일 이름이 확인된 후 파일 이름을 제안할 수 있습니다.

  • headers

    HeaderNameValuePair[] 선택사항

    URL이 HTTP[s] 프로토콜을 사용하는 경우 요청과 함께 전송할 추가 HTTP 헤더입니다. 각 헤더는 name 키와 value 또는 binaryValue 키를 포함하는 사전으로 표시되며, 이러한 키는 XMLHttpRequest에서 허용하는 항목으로 제한됩니다.

  • method

    HttpMethod 선택사항

    URL이 HTTP[S] 프로토콜을 사용하는 경우 사용할 HTTP 메서드입니다.

  • saveAs

    부울 선택사항

    파일 선택기를 사용하여 filename가 설정되었는지 또는 이미 존재하는지에 관계없이 사용자가 파일 이름을 선택하도록 허용합니다.

  • url

    문자열

    다운로드할 URL입니다.

DownloadQuery

속성

  • bytesReceived

    number 선택사항

    파일 압축을 고려하지 않고 호스트에서 지금까지 수신된 바이트 수입니다.

  • 위험

    DangerType 선택사항

    이 다운로드가 안전한지 또는 의심스러운지 알려진지를 표시합니다.

  • endTime

    문자열 선택사항

    다운로드가 완료된 시간입니다(ISO 8601 형식).

  • endedAfter

    문자열 선택사항

    ISO 8601 형식으로 지정된 밀리초 이후에 종료되는 DownloadItem로 결과를 제한합니다.

  • endedBefore

    문자열 선택사항

    ISO 8601 형식으로 지정된 밀리초 이전에 종료된 DownloadItem로 결과를 제한합니다.

  • error

    InterruptReason 선택사항

    다운로드가 중단된 이유

  • 존재함

    부울 선택사항

    다운로드한 파일의 존재 여부

  • fileSize

    number 선택사항

    압축 해제 후 전체 파일의 바이트 수 또는 알 수 없는 경우 -1입니다.

  • filename

    문자열 선택사항

    절대 로컬 경로입니다.

  • filenameRegex

    문자열 선택사항

    filename가 지정된 정규 표현식과 일치하는 DownloadItem로 결과를 제한합니다.

  • finalUrl

    문자열 선택사항

    Chrome 54 이상

    모든 리디렉션 후 이 다운로드가 이루어진 절대 URL입니다.

  • finalUrlRegex

    문자열 선택사항

    Chrome 54 이상

    finalUrl가 지정된 정규 표현식과 일치하는 DownloadItem로 결과를 제한합니다.

  • id

    number 선택사항

    쿼리할 DownloadItemid입니다.

  • 제한

    number 선택사항

    반환되는 일치하는 DownloadItem의 최대 개수입니다. 기본값은 1000입니다. 일치하는 모든 DownloadItem를 반환하려면 0으로 설정합니다. 결과를 페이징하는 방법은 search를 참고하세요.

  • 마임

    문자열 선택사항

    파일의 MIME 유형입니다.

  • orderBy

    string[] 선택사항

    검색결과를 정렬하려면 이 배열의 요소를 DownloadItem 속성으로 설정하세요. 예를 들어 orderBy=['startTime']를 설정하면 DownloadItem가 시작 시간을 기준으로 오름차순으로 정렬됩니다. 내림차순으로 지정하려면 하이픈 앞에 하이픈('-startTime')을 붙입니다.

  • 일시중지됨

    부울 선택사항

    다운로드가 호스트에서 데이터 읽기를 중지했지만 연결은 열린 상태로 유지한 경우 true입니다.

  • query

    string[] 선택사항

    이 검색어 배열은 결과를 DownloadItem로 제한합니다. 여기서 filename 또는 url 또는 finalUrl에 대시 '-'로 시작하지 않는 모든 검색어가 포함되고 대시로 시작하는 검색어는 모두 포함되지 않습니다.

  • startTime

    문자열 선택사항

    다운로드가 시작된 시간(ISO 8601 형식)입니다.

  • startedAfter

    문자열 선택사항

    결과를 ISO 8601 형식으로 지정된 밀리초 이후에 시작한 DownloadItem으로 제한합니다.

  • startedBefore

    문자열 선택사항

    결과를 ISO 8601 형식으로 지정된 밀리초 이전에 시작된 DownloadItem으로 제한합니다.

  • state

     선택사항

    다운로드가 진행 중인지, 중단되었는지 또는 완료되었는지를 나타냅니다.

  • totalBytes

    number 선택사항

    파일 압축을 고려하지 않은 전체 파일의 바이트 수 또는 알 수 없는 경우 -1입니다.

  • totalBytesGreater

    number 선택사항

    totalBytes가 지정된 정수보다 큰 DownloadItem로 결과를 제한합니다.

  • totalBytesLess

    number 선택사항

    totalBytes가 지정된 정수보다 작은 DownloadItem로 결과를 제한합니다.

  • url

    문자열 선택사항

    리디렉션 전에 이 다운로드가 시작된 절대 URL입니다.

  • urlRegex

    문자열 선택사항

    url가 지정된 정규 표현식과 일치하는 DownloadItem로 결과를 제한합니다.

FilenameConflictAction

통일

중복을 피하기 위해 파일 이름 확장자 앞에 카운터를 포함하도록 filename가 변경됩니다.

덮어쓰기

기존 파일을 새 파일로 덮어씁니다.

프롬프트

사용자에게 파일 선택기 대화상자가 표시됩니다.

enum

"uniquify"

FilenameSuggestion

속성

  • conflictAction

    filename가 이미 있는 경우 취할 작업입니다.

  • filename

    문자열

    사용자의 기본 다운로드 디렉터리에 상대적인 경로로, DownloadItem의 새 대상 DownloadItem.filename. 하위 디렉터리를 포함할 수 있습니다. 절대 경로, 빈 경로, 역참조('..')를 포함하는 경로는 무시됩니다. 확장 프로그램에서 등록한 onDeterminingFilename 리스너가 있는 경우 filename는 무시됩니다.

GetFileIconOptions

속성

  • 크기

     선택사항

    반환된 아이콘의 크기입니다. 아이콘은 크기 * 크기 픽셀로 된 정사각형입니다. 아이콘의 기본 및 최대 크기는 32x32픽셀입니다. 지원되는 크기는 16과 32뿐입니다. 다른 크기를 지정하면 오류가 발생합니다.

HeaderNameValuePair

속성

  • 이름

    문자열

    HTTP 헤더의 이름입니다.

  • 문자열

    HTTP 헤더의 값입니다.

HttpMethod

enum

InterruptReason

enum

State

in_progress

다운로드가 현재 서버로부터 데이터를 수신하고 있습니다.

중단됨

오류가 발생하여 파일 호스트와의 연결이 끊겼습니다.

complete

다운로드가 완료되었습니다.

enum

"in_progress"

StringDelta

속성

  • 현재

    문자열 선택사항

  • 이전

    문자열 선택사항

UiOptions

Chrome 105 이상

속성

  • 사용 설정됨

    boolean

    다운로드 UI를 사용 또는 사용 중지합니다.

방법

acceptDanger()

프로미스
chrome.downloads.acceptDanger(
  downloadId: number,
  callback?: function,
)

사용자에게 위험한 다운로드를 수락하라는 메시지를 표시합니다. 보이는 컨텍스트 (탭, 창, 페이지/브라우저 작업 팝업)에서만 호출할 수 있습니다. 위험한 다운로드를 자동으로 허용하지 않습니다. 다운로드가 수락되면 onChanged 이벤트가 실행되고, 그러지 않으면 아무 일도 일어나지 않습니다. 모든 데이터를 임시 파일로 가져오고 다운로드가 위험하지 않거나 위험이 허용되면 임시 파일의 이름이 타겟 파일 이름으로 변경되고 state가 'complete'로 변경되며 onChanged가 실행됩니다.

매개변수

  • downloadId

    숫자

    DownloadItem의 식별자입니다.

  • 콜백

    함수 선택사항

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

    ()=>void

반환 값

  • Promise<void>

    Chrome 96 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

cancel()

프로미스
chrome.downloads.cancel(
  downloadId: number,
  callback?: function,
)

다운로드를 취소합니다. callback가 실행되면 다운로드가 취소 또는 완료되거나 중단되거나 더 이상 존재하지 않습니다.

매개변수

  • downloadId

    숫자

    취소할 다운로드의 ID입니다.

  • 콜백

    함수 선택사항

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

    ()=>void

반환 값

  • Promise<void>

    Chrome 96 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

download()

프로미스
chrome.downloads.download(
  options: DownloadOptions,
  callback?: function,
)

URL을 다운로드합니다. URL이 HTTP[S] 프로토콜을 사용하는 경우 요청에 현재 호스트 이름에 대해 설정된 모든 쿠키가 포함됩니다. filenamesaveAs가 모두 지정된 경우에는 지정된 filename로 미리 채워진 '다른 이름으로 저장' 대화상자가 표시됩니다. 다운로드가 성공적으로 시작되면 callback가 새 DownloadItemdownloadId와 함께 호출됩니다. 다운로드 시작 중에 오류가 발생하면 callbackdownloadId=undefined와 함께 호출되며 runtime.lastError에는 설명 문자열이 포함됩니다. 오류 문자열은 버전 간에 하위 호환성이 유지되지 않을 수 있습니다. 확장 프로그램에서 파싱할 수 없습니다.

매개변수

  • 다운로드 항목 및 다운로드 방법

  • 콜백

    함수 선택사항

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

    (downloadId: number)=>void

    • downloadId

      숫자

반환 값

  • 프로미스<number>

    Chrome 96 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

erase()

프로미스
chrome.downloads.erase(
  query: DownloadQuery,
  callback?: function,
)

다운로드한 파일을 삭제하지 않고 기록에서 일치하는 DownloadItem을(를) 삭제합니다. query와 일치하는 각 DownloadItem에 대해 onErased 이벤트가 실행되고 callback가 호출됩니다.

매개변수

  • 콜백

    함수 선택사항

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

    (erasedIds: number[])=>void

    • erasedIds

      숫자[]

반환 값

  • 프로미스<number[]>

    Chrome 96 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

getFileIcon()

프로미스
chrome.downloads.getFileIcon(
  downloadId: number,
  options?: GetFileIconOptions,
  callback?: function,
)

지정된 다운로드의 아이콘을 검색합니다. 새로 다운로드하는 경우 onCreated 이벤트를 수신한 후에 파일 아이콘을 사용할 수 있습니다. 다운로드가 진행되는 동안 이 함수가 반환하는 이미지는 다운로드 완료 후 반환된 이미지와 다를 수 있습니다. 아이콘 검색은 플랫폼에 따라 기본 운영 체제 또는 툴킷을 쿼리하여 수행됩니다. 따라서 반환되는 아이콘은 다운로드 상태, 플랫폼, 등록된 파일 형식 및 시각적 테마를 비롯한 다양한 요소에 따라 달라집니다. 파일 아이콘을 결정할 수 없는 경우 runtime.lastError에 오류 메시지가 포함됩니다.

매개변수

  • downloadId

    숫자

    다운로드의 식별자입니다.

  • 옵션

    GetFileIconOptions 선택사항

  • 콜백

    함수 선택사항

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

    (iconURL?: string)=>void

    • iconURL

      문자열 선택사항

반환 값

  • 프로미스<string|undefined>

    Chrome 96 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

open()

프로미스
chrome.downloads.open(
  downloadId: number,
  callback?: function,
)

DownloadItem가 완료되면 지금 다운로드한 파일을 열고, 완료되지 않으면 runtime.lastError를 통해 오류를 반환합니다. 이 메서드에는 "downloads" 권한 외에도 "downloads.open" 권한이 필요합니다. onChanged 이벤트는 항목이 처음 열릴 때 실행됩니다. 이 메서드는 사용자 동작에 관한 응답으로만 호출할 수 있습니다.

매개변수

  • downloadId

    숫자

    다운로드한 파일의 식별자입니다.

  • 콜백

    함수 선택사항

    Chrome 123 이상

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

    ()=>void

반환 값

  • Promise<void>

    Chrome 123 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

pause()

프로미스
chrome.downloads.pause(
  downloadId: number,
  callback?: function,
)

다운로드를 일시중지합니다. 요청에 성공하면 다운로드가 일시중지 상태가 됩니다. 그렇지 않으면 runtime.lastError에 오류 메시지가 포함됩니다. 다운로드가 활성화되지 않으면 요청이 실패합니다.

매개변수

  • downloadId

    숫자

    일시중지할 다운로드의 ID입니다.

  • 콜백

    함수 선택사항

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

    ()=>void

반환 값

  • Promise<void>

    Chrome 96 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

removeFile()

프로미스
chrome.downloads.removeFile(
  downloadId: number,
  callback?: function,
)

다운로드한 파일이 있고 DownloadItem가 완료되면 삭제합니다. 그렇지 않으면 runtime.lastError를 통해 오류를 반환합니다.

매개변수

  • downloadId

    숫자

  • 콜백

    함수 선택사항

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

    ()=>void

반환 값

  • Promise<void>

    Chrome 96 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

resume()

프로미스
chrome.downloads.resume(
  downloadId: number,
  callback?: function,
)

일시중지된 다운로드를 다시 시작합니다. 요청이 성공하면 다운로드가 진행 중이며 일시중지가 해제된 것입니다. 그렇지 않으면 runtime.lastError에 오류 메시지가 포함됩니다. 다운로드가 활성화되지 않으면 요청이 실패합니다.

매개변수

  • downloadId

    숫자

    다시 시작할 다운로드의 ID입니다.

  • 콜백

    함수 선택사항

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

    ()=>void

반환 값

  • Promise<void>

    Chrome 96 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

프로미스
chrome.downloads.search(
  query: DownloadQuery,
  callback?: function,
)

DownloadItem를 찾습니다. query를 빈 객체로 설정하여 모든 DownloadItem를 가져옵니다. 특정 DownloadItem를 가져오려면 id 필드만 설정합니다. 많은 수의 항목을 페이징하려면 orderBy: ['-startTime']를 설정하고, limit를 페이지당 항목 수로 설정하고, startedAfter를 마지막 페이지의 마지막 항목의 startTime로 설정합니다.

매개변수

반환 값

  • Promise<DownloadItem[]>

    Chrome 96 이상

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

setShelfEnabled()

Chrome 117 이후 지원 중단됨
chrome.downloads.setShelfEnabled(
  enabled: boolean,
)

대신 setUiOptions를 사용하세요.

현재 브라우저 프로필과 연결된 모든 창의 하단에서 회색 실행기를 사용하거나 사용 중지합니다. 하나 이상의 확장 프로그램이 사용 중지되면 실행기는 사용 중지됩니다. 하나 이상의 다른 확장 프로그램이 사용 중지된 상태에서 실행기를 사용 설정하면 runtime.lastError를 통해 오류가 반환됩니다. "downloads" 권한 외에 "downloads.shelf" 권한이 필요합니다.

매개변수

  • 사용 설정됨

    boolean

setUiOptions()

Promise Chrome 105 이상
chrome.downloads.setUiOptions(
  options: UiOptions,
  callback?: function,
)

현재 브라우저 프로필과 연결된 모든 창의 다운로드 UI를 변경합니다. 하나 이상의 확장 프로그램에서 UiOptions.enabled를 false로 설정하는 한 다운로드 UI가 숨겨집니다. 하나 이상의 다른 확장 프로그램이 사용 중지된 상태에서 UiOptions.enabled를 true로 설정하면 runtime.lastError를 통해 오류가 반환됩니다. "downloads" 권한 외에 "downloads.ui" 권한이 필요합니다.

매개변수

  • 옵션

    다운로드 UI 변경사항을 캡슐화합니다.

  • 콜백

    함수 선택사항

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

    ()=>void

반환 값

  • Promise<void>

    프로미스는 Manifest V3 이상에서 지원되지만 콜백은 이전 버전과의 호환성을 위해 제공됩니다. 동일한 함수 호출에 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

show()

chrome.downloads.show(
  downloadId: number,
)

파일 관리자의 폴더에 다운로드한 파일을 표시합니다.

매개변수

  • downloadId

    숫자

    다운로드한 파일의 식별자입니다.

showDefaultFolder()

chrome.downloads.showDefaultFolder()

파일 관리자에 기본 다운로드 폴더를 표시합니다.

이벤트

onChanged

chrome.downloads.onChanged.addListener(
  callback: function,
)

bytesReceivedestimatedEndTime를 제외한 DownloadItem의 속성이 변경되면 이 이벤트는 downloadId 및 변경된 속성을 포함하는 객체와 함께 실행됩니다.

매개변수

onCreated

chrome.downloads.onCreated.addListener(
  callback: function,
)

이 이벤트는 다운로드가 시작될 때 DownloadItem 객체와 함께 실행됩니다.

매개변수

  • 콜백

    기능

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

    (downloadItem: DownloadItem)=>void

onDeterminingFilename

chrome.downloads.onDeterminingFilename.addListener(
  callback: function,
)

파일 이름 결정 프로세스 중에 확장 프로그램이 타겟 DownloadItem.filename를 재정의할 수 있습니다. 각 확장 프로그램은 이 이벤트에 대해 둘 이상의 리스너를 등록할 수 없습니다. 각 리스너는 동기식 또는 비동기식으로 suggest를 정확히 한 번 호출해야 합니다. 리스너가 suggest를 비동기식으로 호출하면 true를 반환해야 합니다. 리스너가 동기식으로 suggest를 호출하지도 true도 반환하지 않으면 suggest가 자동으로 호출됩니다. DownloadItem는 모든 리스너가 suggest를 호출할 때까지 완료되지 않습니다. 리스너는 다운로드에서 파일 이름에 downloadItem.filename를 사용하도록 허용하기 위해 인수 없이 suggest를 호출하거나 타겟 파일 이름을 재정의하기 위해 suggestion 객체를 suggest에 전달할 수 있습니다. 둘 이상의 확장 프로그램이 파일 이름을 재정의하면 리스너가 suggestion 객체를 suggest에 전달하는 마지막에 설치된 확장 프로그램이 우선합니다. 어떤 확장 프로그램이 선정될지에 대한 혼란을 피하기 위해 사용자는 충돌할 수 있는 확장 프로그램을 설치하지 않아야 합니다. 다운로드가 download에 의해 시작되고 MIME 유형 및 임시 파일 이름이 결정되기 전에 타겟 파일 이름이 알려진 경우 filenamedownload에 대신 전달합니다.

매개변수

onErased

chrome.downloads.onErased.addListener(
  callback: function,
)

다운로드 기록이 기록에서 삭제되면 downloadId를 사용하여 실행됩니다.

매개변수

  • 콜백

    기능

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

    (downloadId: number)=>void

    • downloadId

      숫자