chrome.downloads

Mô tả

Dùng API chrome.downloads để khởi tạo, giám sát, thao tác và tìm kiếm các lượt tải xuống theo phương thức lập trình.

Quyền

downloads

Bạn phải khai báo quyền "downloads" trong tệp kê khai tiện ích để sử dụng API này.

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

Ví dụ

Bạn có thể tìm thấy các ví dụ đơn giản về cách sử dụng API chrome.downloads trong thư mục examples/api/downloads. Để xem các ví dụ khác và được trợ giúp xem mã nguồn, hãy xem phần Mẫu.

Loại

BooleanDelta

Thuộc tính

  • hồ sơ thanh toán

    boolean không bắt buộc

  • trước

    boolean không bắt buộc

DangerType

tệp

Tên tệp của nội dung tải xuống có dấu hiệu đáng ngờ.

url

URL tải xuống được biết là có hại.

nội dung

Tệp đã tải xuống được xác định là độc hại.

không phổ biến

URL của tệp tải xuống thường không được tải xuống và có thể nguy hiểm.

người tổ chức

Nội dung tải xuống đến từ một máy chủ được biết là phân phối các tệp nhị phân độc hại và có thể nguy hiểm.

không mong muốn

Tệp tải xuống có thể không mong muốn hoặc không an toàn. Ví dụ: phần mềm này có thể thay đổi chế độ cài đặt của trình duyệt hoặc máy tính.

an toàn

Nội dung tải xuống không gây ra mối nguy hiểm nào đã biết cho máy tính của người dùng.

đã chấp nhận

Người dùng đã chấp nhận tải nội dung nguy hiểm xuống.

Enum

"tệp"

"url"

"content"

"không phổ biến"

"host"

"không mong muốn"

"safe"

"accepted"

"allowlistedByPolicy"

"asyncScanning"

"asyncLocalPasswordScanning"

"passwordProtected"

"blockedTooLarge"

"sensitiveContentWarning"

"sensitiveContentBlock"

"deepScannedFailed"

"deepScannedSafe"

"deepScannedOpenedDangerous"

"promptForScanning"

"promptForLocalPasswordScanning"

"accountCompromise"

"blockedScanFailed"

DoubleDelta

Thuộc tính

  • hồ sơ thanh toán

    number không bắt buộc

  • trước

    number không bắt buộc

DownloadDelta

Thuộc tính

  • canResume

    BooleanDelta không bắt buộc

    Thay đổi về canResume (nếu có).

  • nguy hiểm

    StringDelta không bắt buộc

    Thay đổi về danger (nếu có).

  • endTime

    StringDelta không bắt buộc

    Thay đổi về endTime (nếu có).

  • error

    StringDelta không bắt buộc

    Thay đổi về error (nếu có).

  • tồn tại

    BooleanDelta không bắt buộc

    Thay đổi về exists (nếu có).

  • fileSize

    DoubleDelta không bắt buộc

    Thay đổi về fileSize (nếu có).

  • filename

    StringDelta không bắt buộc

    Thay đổi về filename (nếu có).

  • finalUrl

    StringDelta không bắt buộc

    Chrome 54 trở lên

    Thay đổi về finalUrl (nếu có).

  • id

    số

    id của DownloadItem đã thay đổi.

  • điệu bộ

    StringDelta không bắt buộc

    Thay đổi về mime (nếu có).

  • tạm dừng

    BooleanDelta không bắt buộc

    Thay đổi về paused (nếu có).

  • startTime

    StringDelta không bắt buộc

    Thay đổi về startTime (nếu có).

  • tiểu bang

    StringDelta không bắt buộc

    Thay đổi về state (nếu có).

  • totalBytes

    DoubleDelta không bắt buộc

    Thay đổi về totalBytes (nếu có).

  • url

    StringDelta không bắt buộc

    Thay đổi về url (nếu có).

DownloadItem

Thuộc tính

  • byExtensionId

    chuỗi không bắt buộc

    Giá trị nhận dạng của tiện ích đã bắt đầu quá trình tải xuống này (nếu quá trình tải xuống này do một tiện ích bắt đầu). Không thay đổi sau khi được đặt.

  • byExtensionName

    chuỗi không bắt buộc

    Tên đã bản địa hoá của tiện ích đã bắt đầu quá trình tải xuống này (nếu quá trình tải xuống này do một tiện ích bắt đầu). Có thể thay đổi nếu tiện ích thay đổi tên hoặc nếu người dùng thay đổi ngôn ngữ.

  • bytesReceived

    số

    Số byte nhận được từ máy chủ tính đến thời điểm hiện tại, không tính đến việc nén tệp.

  • canResume

    boolean

    True nếu quá trình tải xuống đang diễn ra và bị tạm dừng, hoặc nếu quá trình này bị gián đoạn và có thể tiếp tục từ nơi bị gián đoạn.

  • nguy hiểm

    Cho biết bản tải xuống này được cho là an toàn hay được biết là đáng ngờ.

  • endTime

    chuỗi không bắt buộc

    Thời gian kết thúc quá trình tải xuống ở định dạng ISO 8601. Có thể được truyền trực tiếp đến hàm khởi tạo Date: chrome.downloads.search({}, function(items){items.forEach(function(item){if (item.endTime) console.log(new Date(item.endTime))})})

  • error

    InterruptReason không bắt buộc

    Lý do khiến quá trình tải xuống bị gián đoạn. Một số loại lỗi HTTP có thể được nhóm vào một trong các lỗi bắt đầu bằng SERVER_. Các lỗi liên quan đến mạng bắt đầu bằng NETWORK_, các lỗi liên quan đến quy trình ghi tệp vào hệ thống tệp bắt đầu bằng FILE_ và các lỗi do người dùng bắt đầu bắt đầu bằng USER_.

  • estimatedEndTime

    chuỗi không bắt buộc

    Thời gian ước tính hoàn tất quá trình tải xuống ở định dạng ISO 8601. Có thể được truyền trực tiếp đến hàm khởi tạo Date: chrome.downloads.search({}, function(items){items.forEach(function(item){if (item.estimatedEndTime) console.log(new Date(item.estimatedEndTime))})})

  • tồn tại

    boolean

    Tệp đã tải xuống có còn tồn tại hay không. Thông tin này có thể đã cũ vì Chrome không tự động theo dõi việc xoá tệp. Gọi search() để kích hoạt quy trình kiểm tra sự tồn tại của tệp. Khi quá trình kiểm tra sự tồn tại hoàn tất, nếu tệp đã bị xoá, thì sự kiện onChanged sẽ kích hoạt. Xin lưu ý rằng search() không đợi quá trình kiểm tra sự tồn tại hoàn tất trước khi trả về, vì vậy, kết quả từ search() có thể không phản ánh chính xác hệ thống tệp. Ngoài ra, bạn có thể gọi search() thường xuyên khi cần, nhưng không được kiểm tra sự tồn tại của tệp thường xuyên hơn 1 lần mỗi 10 giây.

  • fileSize

    số

    Số lượng byte trong toàn bộ tệp sau khi giải nén hoặc -1 nếu không xác định.

  • filename

    chuỗi

    Đường dẫn tuyệt đối cục bộ.

  • finalUrl

    chuỗi

    Chrome 54 trở lên

    URL tuyệt đối mà quá trình tải xuống này đang được thực hiện, sau tất cả các lệnh chuyển hướng.

  • id

    số

    Giá trị nhận dạng vẫn tồn tại trong các phiên trình duyệt.

  • ẩn danh

    boolean

    False nếu lượt tải xuống này được ghi lại trong nhật ký, true nếu không được ghi lại.

  • điệu bộ

    chuỗi

    Loại MIME của tệp.

  • tạm dừng

    boolean

    True nếu quá trình tải xuống đã ngừng đọc dữ liệu từ máy chủ lưu trữ nhưng vẫn giữ kết nối mở.

  • người giới thiệu

    chuỗi

    URL tuyệt đối.

  • startTime

    chuỗi

    Thời gian bắt đầu tải xuống ở định dạng ISO 8601. Có thể được truyền trực tiếp đến hàm khởi tạo Date: chrome.downloads.search({}, function(items){items.forEach(function(item){console.log(new Date(item.startTime))})})

  • tiểu bang

    Cho biết quá trình tải xuống đang diễn ra, bị gián đoạn hay đã hoàn tất.

  • totalBytes

    số

    Số byte trong toàn bộ tệp, không tính đến việc nén tệp hoặc -1 nếu không xác định được.

  • url

    chuỗi

    URL tuyệt đối mà lượt tải xuống này bắt đầu, trước khi có bất kỳ lượt chuyển hướng nào.

DownloadOptions

Thuộc tính

  • body

    chuỗi không bắt buộc

    Nội dung bài đăng.

  • conflictAction

    FilenameConflictAction không bắt buộc

    Hành động cần thực hiện nếu filename đã tồn tại.

  • filename

    chuỗi không bắt buộc

    Đường dẫn tệp tương ứng với thư mục Tải xuống để chứa tệp đã tải xuống, có thể chứa các thư mục con. Đường dẫn tuyệt đối, đường dẫn trống và đường dẫn chứa các tham chiếu ngược ".." sẽ gây ra lỗi. onDeterminingFilename cho phép đề xuất tên tệp sau khi xác định được loại MIME của tệp và tên tệp dự kiến.

  • tiêu đề

    HeaderNameValuePair[] không bắt buộc

    Tiêu đề HTTP bổ sung để gửi cùng với yêu cầu nếu URL sử dụng giao thức HTTP[s]. Mỗi tiêu đề được biểu thị dưới dạng một từ điển chứa các khoá namevalue hoặc binaryValue, chỉ giới hạn ở những tiêu đề được XMLHttpRequest cho phép.

  • method

    HttpMethod không bắt buộc

    Phương thức HTTP cần sử dụng nếu URL sử dụng giao thức HTTP[S].

  • saveAs

    boolean không bắt buộc

    Sử dụng bộ chọn tệp để cho phép người dùng chọn tên tệp, bất kể filename được đặt hay đã tồn tại.

  • url

    chuỗi

    URL để tải xuống.

DownloadQuery

Thuộc tính

  • bytesReceived

    number không bắt buộc

    Số byte nhận được từ máy chủ tính đến thời điểm hiện tại, không tính đến việc nén tệp.

  • nguy hiểm

    DangerType không bắt buộc

    Cho biết bản tải xuống này được cho là an toàn hay được biết là đáng ngờ.

  • endTime

    chuỗi không bắt buộc

    Thời gian kết thúc quá trình tải xuống ở định dạng ISO 8601.

  • endedAfter

    chuỗi không bắt buộc

    Giới hạn kết quả ở DownloadItem đã kết thúc sau ms nhất định ở định dạng ISO 8601

  • endedBefore

    chuỗi không bắt buộc

    Giới hạn kết quả ở DownloadItem đã kết thúc trước thời gian đã cho (tính bằng mili giây) ở định dạng ISO 8601.

  • error

    InterruptReason không bắt buộc

    Lý do khiến quá trình tải xuống bị gián đoạn.

  • tồn tại

    boolean không bắt buộc

    Tệp đã tải xuống có tồn tại hay không;

  • fileSize

    number không bắt buộc

    Số lượng byte trong toàn bộ tệp sau khi giải nén hoặc -1 nếu không xác định.

  • filename

    chuỗi không bắt buộc

    Đường dẫn tuyệt đối cục bộ.

  • filenameRegex

    chuỗi không bắt buộc

    Giới hạn kết quả cho DownloadItemfilename khớp với biểu thức chính quy đã cho.

  • finalUrl

    chuỗi không bắt buộc

    Chrome 54 trở lên

    URL tuyệt đối mà quá trình tải xuống này đang được thực hiện, sau tất cả các lệnh chuyển hướng.

  • finalUrlRegex

    chuỗi không bắt buộc

    Chrome 54 trở lên

    Giới hạn kết quả cho DownloadItemfinalUrl khớp với biểu thức chính quy đã cho.

  • id

    number không bắt buộc

    id của DownloadItem để truy vấn.

  • giới hạn

    number không bắt buộc

    Số lượng DownloadItem trùng khớp tối đa được trả về. Giá trị mặc định là 1000. Đặt thành 0 để trả về tất cả DownloadItem khớp. Xem search để biết cách chuyển trang kết quả.

  • điệu bộ

    chuỗi không bắt buộc

    Loại MIME của tệp.

  • orderBy

    string[] không bắt buộc

    Đặt các phần tử của mảng này thành các thuộc tính DownloadItem để sắp xếp kết quả tìm kiếm. Ví dụ: việc đặt orderBy=['startTime'] sẽ sắp xếp DownloadItem theo thời gian bắt đầu theo thứ tự tăng dần. Để chỉ định thứ tự giảm dần, hãy thêm dấu gạch ngang vào trước: "-startTime".

  • tạm dừng

    boolean không bắt buộc

    True nếu quá trình tải xuống đã ngừng đọc dữ liệu từ máy chủ lưu trữ nhưng vẫn giữ kết nối mở.

  • truy vấn

    string[] không bắt buộc

    Mảng cụm từ tìm kiếm này giới hạn kết quả ở DownloadItemfilename hoặc url hoặc finalUrl chứa tất cả cụm từ tìm kiếm không bắt đầu bằng dấu gạch ngang "-" và không có cụm từ tìm kiếm nào bắt đầu bằng dấu gạch ngang.

  • startTime

    chuỗi không bắt buộc

    Thời gian bắt đầu tải xuống ở định dạng ISO 8601.

  • startedAfter

    chuỗi không bắt buộc

    Giới hạn kết quả ở DownloadItem bắt đầu sau ms đã cho ở định dạng ISO 8601.

  • startedBefore

    chuỗi không bắt buộc

    Giới hạn kết quả ở DownloadItem bắt đầu trước thời gian đã cho (tính bằng mili giây) ở định dạng ISO 8601.

  • tiểu bang

    Tiểu bang không bắt buộc

    Cho biết quá trình tải xuống đang diễn ra, bị gián đoạn hay đã hoàn tất.

  • totalBytes

    number không bắt buộc

    Số byte trong toàn bộ tệp, không tính đến việc nén tệp hoặc -1 nếu không xác định được.

  • totalBytesGreater

    number không bắt buộc

    Giới hạn kết quả ở DownloadItemtotalBytes lớn hơn số nguyên đã cho.

  • totalBytesLess

    number không bắt buộc

    Giới hạn kết quả ở DownloadItemtotalBytes nhỏ hơn số nguyên đã cho.

  • url

    chuỗi không bắt buộc

    URL tuyệt đối mà lượt tải xuống này bắt đầu, trước khi có bất kỳ lượt chuyển hướng nào.

  • urlRegex

    chuỗi không bắt buộc

    Giới hạn kết quả cho DownloadItemurl khớp với biểu thức chính quy đã cho.

FilenameConflictAction

tạo tên riêng biệt

Để tránh trùng lặp, filename sẽ được thay đổi để có thêm một bộ đếm trước đuôi tệp.

ghi đè

Tệp mới sẽ ghi đè lên tệp hiện có.

prompt

Người dùng sẽ được nhắc bằng một hộp thoại bộ chọn tệp.

Enum

"uniquify"

"overwrite"

"prompt"

FilenameSuggestion

Thuộc tính

  • conflictAction

    FilenameConflictAction không bắt buộc

    Hành động cần thực hiện nếu filename đã tồn tại.

  • filename

    chuỗi

    Mục tiêu mới của DownloadItemDownloadItem.filename, dưới dạng một đường dẫn tương đối đến thư mục Tải xuống mặc định của người dùng, có thể chứa các thư mục con. Đường dẫn tuyệt đối, đường dẫn trống và đường dẫn chứa các tham chiếu ngược ".." sẽ bị bỏ qua. filename sẽ bị bỏ qua nếu có bất kỳ trình nghe onDeterminingFilename nào được đăng ký bởi bất kỳ tiện ích nào.

GetFileIconOptions

Thuộc tính

  • size

    number không bắt buộc

    Kích thước của biểu tượng được trả về. Biểu tượng sẽ có dạng hình vuông với kích thước size * size pixel. Kích thước mặc định và lớn nhất cho biểu tượng là 32x32 pixel. Kích thước duy nhất được hỗ trợ là 16 và 32. Bạn sẽ gặp lỗi nếu chỉ định bất kỳ kích thước nào khác.

HeaderNameValuePair

Thuộc tính

  • tên

    chuỗi

    Tên của tiêu đề HTTP.

  • value

    chuỗi

    Giá trị của tiêu đề HTTP.

HttpMethod

Enum

"GET"

"POST"

InterruptReason

Enum

"FILE_FAILED"

"FILE_ACCESS_DENIED"

"FILE_NO_SPACE"

"FILE_NAME_TOO_LONG"

"FILE_TOO_LARGE"

"FILE_VIRUS_INFECTED"

"FILE_TRANSIENT_ERROR"

"FILE_BLOCKED"

"FILE_SECURITY_CHECK_FAILED"

"FILE_TOO_SHORT"

"FILE_HASH_MISMATCH"

"FILE_SAME_AS_SOURCE"

"NETWORK_FAILED"

"NETWORK_TIMEOUT"

"NETWORK_DISCONNECTED"

"NETWORK_SERVER_DOWN"

"NETWORK_INVALID_REQUEST"

"SERVER_FAILED"

"SERVER_NO_RANGE"

"SERVER_BAD_CONTENT"

"SERVER_UNAUTHORIZED"

"SERVER_CERT_PROBLEM"

"SERVER_FORBIDDEN"

"SERVER_UNREACHABLE"

"SERVER_CONTENT_LENGTH_MISMATCH"

"SERVER_CROSS_ORIGIN_REDIRECT"

"USER_CANCELED"

"USER_SHUTDOWN"

"CRASH"

State

in_progress

Quá trình tải xuống hiện đang nhận dữ liệu từ máy chủ.

bị gián đoạn

Đã xảy ra lỗi khiến kết nối với máy chủ lưu trữ tệp bị gián đoạn.

đã hoàn tất

Đã tải xuống thành công.

Enum

"in_progress"

"interrupted"

"complete"

StringDelta

Thuộc tính

  • hồ sơ thanh toán

    chuỗi không bắt buộc

  • trước

    chuỗi không bắt buộc

UiOptions

Chrome 105 trở lên

Thuộc tính

  • đang bật

    boolean

    Bật hoặc tắt giao diện người dùng tải xuống.

Phương thức

acceptDanger()

chrome.downloads.acceptDanger(
  downloadId: number,
)
: Promise<void>

Nhắc người dùng chấp nhận một tệp tải xuống nguy hiểm. Chỉ có thể được gọi từ một ngữ cảnh hiển thị (thẻ, cửa sổ hoặc cửa sổ bật lên của thao tác trên trang/trình duyệt). Không tự động chấp nhận nội dung tải xuống nguy hiểm. Nếu quá trình tải xuống được chấp nhận, thì sự kiện onChanged sẽ kích hoạt, nếu không thì sẽ không có gì xảy ra. Khi tất cả dữ liệu được tìm nạp vào một tệp tạm thời và quá trình tải xuống không nguy hiểm hoặc người dùng đã chấp nhận nguy cơ, thì tệp tạm thời sẽ được đổi tên thành tên tệp mục tiêu, state thay đổi thành "complete" (hoàn tất) và onChanged sẽ kích hoạt.

Thông số

  • downloadId

    số

    Giá trị nhận dạng của DownloadItem.

Giá trị trả về

  • Promise<void>

    Chrome 96 trở lên

cancel()

chrome.downloads.cancel(
  downloadId: number,
)
: Promise<void>

Huỷ quá trình tải xuống. Khi callback chạy, quá trình tải xuống sẽ bị huỷ, hoàn tất, gián đoạn hoặc không còn tồn tại nữa.

Thông số

  • downloadId

    số

    Mã của lượt tải xuống cần huỷ.

Giá trị trả về

  • Promise<void>

    Chrome 96 trở lên

download()

chrome.downloads.download(
  options: DownloadOptions,
)
: Promise<number>

Tải một URL xuống. Nếu URL sử dụng giao thức HTTP[S], thì yêu cầu sẽ bao gồm tất cả cookie hiện được đặt cho tên máy chủ của URL đó. Nếu bạn chỉ định cả filenamesaveAs, thì hộp thoại Lưu dưới dạng sẽ xuất hiện, được điền sẵn bằng filename mà bạn đã chỉ định. Nếu quá trình tải xuống bắt đầu thành công, callback sẽ được gọi bằng downloadId của DownloadItem mới. Nếu xảy ra lỗi khi bắt đầu tải xuống, thì callback sẽ được gọi bằng downloadId=undefinedruntime.lastError sẽ chứa một chuỗi mô tả. Các chuỗi lỗi không đảm bảo khả năng tương thích ngược giữa các bản phát hành. Tiện ích không được phân tích cú pháp.

Thông số

  • tùy chọn

    Những nội dung cần tải xuống và cách tải xuống.

Giá trị trả về

  • Promise<number>

    Chrome 96 trở lên

erase()

chrome.downloads.erase(
  query: DownloadQuery,
)
: Promise<number[]>

Xoá DownloadItem trùng khớp khỏi nhật ký mà không xoá tệp đã tải xuống. Sự kiện onErased sẽ kích hoạt cho mỗi DownloadItem khớp với query, sau đó callback sẽ được gọi.

Thông số

Giá trị trả về

  • Promise<number[]>

    Chrome 96 trở lên

getFileIcon()

chrome.downloads.getFileIcon(
  downloadId: number,
  options?: GetFileIconOptions,
)
: Promise<string | undefined>

Truy xuất biểu tượng cho nội dung tải xuống đã chỉ định. Đối với nội dung tải xuống mới, biểu tượng tệp sẽ xuất hiện sau khi nhận được sự kiện onCreated. Hình ảnh do hàm này trả về trong khi quá trình tải xuống đang diễn ra có thể khác với hình ảnh được trả về sau khi quá trình tải xuống hoàn tất. Việc truy xuất biểu tượng được thực hiện bằng cách truy vấn hệ điều hành hoặc bộ công cụ cơ bản, tuỳ thuộc vào nền tảng. Do đó, biểu tượng được trả về sẽ phụ thuộc vào một số yếu tố, bao gồm trạng thái tải xuống, nền tảng, các loại tệp đã đăng ký và giao diện trực quan. Nếu không xác định được biểu tượng tệp, runtime.lastError sẽ chứa một thông báo lỗi.

Thông số

  • downloadId

    số

    Giá trị nhận dạng của tệp tải xuống.

  • tùy chọn

    GetFileIconOptions không bắt buộc

Giá trị trả về

  • Promise<string | undefined>

    Chrome 96 trở lên

open()

chrome.downloads.open(
  downloadId: number,
)
: Promise<void>

Mở tệp đã tải xuống ngay nếu DownloadItem hoàn tất; nếu không, hãy trả về lỗi thông qua runtime.lastError. Phương thức này yêu cầu quyền "downloads.open" ngoài quyền "downloads". Sự kiện onChanged sẽ kích hoạt khi mục được mở lần đầu tiên. Phương thức này chỉ có thể được gọi để phản hồi một cử chỉ của người dùng.

Thông số

  • downloadId

    số

    Giá trị nhận dạng của tệp đã tải xuống.

Giá trị trả về

  • Promise<void>

    Chrome 123 trở lên

pause()

chrome.downloads.pause(
  downloadId: number,
)
: Promise<void>

Tạm dừng tải xuống. Nếu yêu cầu thành công, thì quá trình tải xuống sẽ ở trạng thái tạm dừng. Nếu không, runtime.lastError sẽ chứa một thông báo lỗi. Yêu cầu sẽ không thành công nếu quá trình tải xuống không hoạt động.

Thông số

  • downloadId

    số

    Mã của nội dung tải xuống cần tạm dừng.

Giá trị trả về

  • Promise<void>

    Chrome 96 trở lên

removeFile()

chrome.downloads.removeFile(
  downloadId: number,
)
: Promise<void>

Xoá tệp đã tải xuống nếu tệp đó tồn tại và DownloadItem đã hoàn tất; nếu không, hãy trả về lỗi thông qua runtime.lastError.

Thông số

  • downloadId

    số

Giá trị trả về

  • Promise<void>

    Chrome 96 trở lên

resume()

chrome.downloads.resume(
  downloadId: number,
)
: Promise<void>

Tiếp tục tải một tệp đã tạm dừng xuống. Nếu yêu cầu thành công, quá trình tải xuống sẽ diễn ra và không bị tạm dừng. Nếu không, runtime.lastError sẽ chứa một thông báo lỗi. Yêu cầu sẽ không thành công nếu quá trình tải xuống không hoạt động.

Thông số

  • downloadId

    số

    Mã nhận dạng của tệp tải xuống cần tiếp tục.

Giá trị trả về

  • Promise<void>

    Chrome 96 trở lên
chrome.downloads.search(
  query: DownloadQuery,
)
: Promise<DownloadItem[]>

Tìm DownloadItem. Đặt query thành đối tượng trống để nhận tất cả DownloadItem. Để nhận một DownloadItem cụ thể, hãy chỉ đặt trường id. Để phân trang qua một số lượng lớn các mục, hãy đặt orderBy: ['-startTime'], đặt limit thành số lượng mục trên mỗi trang và đặt startedAfter thành startTime của mục cuối cùng trên trang cuối cùng.

Thông số

Giá trị trả về

setShelfEnabled()

Không được dùng nữa kể từ Chrome 117
chrome.downloads.setShelfEnabled(
  enabled: boolean,
)
: void

Thay vào đó, hãy sử dụng setUiOptions.

Bật hoặc tắt kệ màu xám ở cuối mỗi cửa sổ được liên kết với hồ sơ trình duyệt hiện tại. Kệ sẽ bị tắt miễn là có ít nhất một tiện ích đã tắt kệ. Việc bật kệ trong khi ít nhất một tiện ích khác đã tắt kệ sẽ trả về lỗi thông qua runtime.lastError. Ngoài quyền "downloads", bạn cần có quyền "downloads.shelf".

Thông số

  • đang bật

    boolean

setUiOptions()

Chrome 105 trở lên
chrome.downloads.setUiOptions(
  options: UiOptions,
)
: Promise<void>

Thay đổi giao diện người dùng tải xuống của mọi cửa sổ được liên kết với hồ sơ trình duyệt hiện tại. Miễn là có ít nhất một tiện ích đặt UiOptions.enabled thành false, giao diện người dùng tải xuống sẽ bị ẩn. Việc đặt UiOptions.enabled thành true trong khi ít nhất một tiện ích khác đã vô hiệu hoá tiện ích này sẽ trả về lỗi thông qua runtime.lastError. Ngoài quyền "downloads", bạn cần có quyền "downloads.ui".

Thông số

  • tùy chọn

    Đóng gói một thay đổi đối với giao diện người dùng tải xuống.

Giá trị trả về

  • Promise<void>

show()

chrome.downloads.show(
  downloadId: number,
)
: void

Hiển thị tệp đã tải xuống trong thư mục của tệp đó trong trình quản lý tệp.

Thông số

  • downloadId

    số

    Giá trị nhận dạng của tệp đã tải xuống.

showDefaultFolder()

chrome.downloads.showDefaultFolder(): void

Hiện thư mục Tải xuống mặc định trong một trình quản lý tệp.

Sự kiện

onChanged

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

Khi bất kỳ thuộc tính nào của DownloadItem thay đổi, ngoại trừ bytesReceivedestimatedEndTime, sự kiện này sẽ kích hoạt với downloadId và một đối tượng chứa các thuộc tính đã thay đổi.

Thông số

onCreated

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

Sự kiện này kích hoạt với đối tượng DownloadItem khi quá trình tải xuống bắt đầu.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (downloadItem: DownloadItem) => void

onDeterminingFilename

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

Trong quá trình xác định tên tệp, các tiện ích sẽ có cơ hội ghi đè DownloadItem.filename đích. Mỗi tiện ích không được đăng ký nhiều hơn một trình nghe cho sự kiện này. Mỗi trình nghe phải gọi suggest đúng một lần, theo cách đồng bộ hoặc không đồng bộ. Nếu trình nghe gọi suggest không đồng bộ, thì trình nghe đó phải trả về true. Nếu trình nghe không gọi suggest đồng bộ cũng như không trả về true, thì suggest sẽ được gọi tự động. DownloadItem sẽ không hoàn tất cho đến khi tất cả các trình nghe gọi suggest. Các trình nghe có thể gọi suggest mà không có bất kỳ đối số nào để cho phép quá trình tải xuống sử dụng downloadItem.filename cho tên tệp hoặc truyền một đối tượng suggestion đến suggest để ghi đè tên tệp đích. Nếu có nhiều tiện ích ghi đè tên tệp, thì tiện ích cuối cùng được cài đặt có trình nghe truyền một đối tượng suggestion đến suggest sẽ thắng. Để tránh nhầm lẫn về tiện ích nào sẽ được ưu tiên, người dùng không nên cài đặt các tiện ích có thể xung đột. Nếu quá trình tải xuống được bắt đầu bằng download và tên tệp đích đã được xác định trước khi loại MIME và tên tệp dự kiến được xác định, hãy truyền filename đến download.

Thông số

onErased

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

Kích hoạt bằng downloadId khi một tệp tải xuống bị xoá khỏi nhật ký.

Thông số

  • callback

    hàm

    Tham số callback có dạng như sau:

    (downloadId: number) => void

    • downloadId

      số