chrome.downloads

Mô tả

Sử dụng API chrome.downloads để khởi động, giám sát, thao tác và tìm kiếm tệp đã 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 examples/api/downloads thư mục. Để biết 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 tệp tải xuống đáng ngờ.

url

URL của tệp tải xuống đó được xác định 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

Tệp tải xuống bắt nguồn từ một máy chủ lưu trữ được xác định 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ụ: nó có thể làm 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 nguy hiểm đã 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 nội dung tải xuống nguy hiểm.

Enum

"asyncScanning"

"asyncLocalPasswordScanning"

DoubleDelta

Thuộc tính

  • hồ sơ thanh toán

    số không bắt buộc

  • trước

    số không bắt buộc

DownloadDelta

Thuộc tính

  • canResume

    BooleanDelta không bắt buộc

    Thay đổi trong canResume, nếu có.

  • mối nguy hiểm

    StringDelta không bắt buộc

    Thay đổi trong danger, nếu có.

  • endTime

    StringDelta không bắt buộc

    Thay đổi trong endTime, nếu có.

  • error

    StringDelta không bắt buộc

    Thay đổi trong error, nếu có.

  • tồn tại

    BooleanDelta không bắt buộc

    Thay đổi trong exists, nếu có.

  • fileSize

    DoubleDelta không bắt buộc

    Thay đổi trong fileSize, nếu có.

  • filename

    StringDelta không bắt buộc

    Thay đổi trong filename, nếu có.

  • finalUrl

    StringDelta không bắt buộc

    Chrome 54 trở lên

    Thay đổi trong finalUrl, nếu có.

  • id

    số

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

  • điệu bộ

    StringDelta không bắt buộc

    Thay đổi trong mime, nếu có.

  • tạm dừng

    BooleanDelta không bắt buộc

    Thay đổi trong paused, nếu có.

  • startTime

    StringDelta không bắt buộc

    Thay đổi trong startTime, nếu có.

  • tiểu bang

    StringDelta không bắt buộc

    Thay đổi trong state, nếu có.

  • totalBytes

    DoubleDelta không bắt buộc

    Thay đổi trong totalBytes, nếu có.

  • url

    StringDelta không bắt buộc

    Thay đổi trong 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 thực hiện. 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 đã kích hoạt 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 thực hiện. Có thể thay đổi nếu tiện ích thay đổi tên hoặc người dùng thay đổi ngôn ngữ.

  • bytesReceived

    số

    Số byte nhận được từ máy chủ lưu trữ tính đến thời điểm hiện tại, chưa tính đến việc nén tệp.

  • canResume

    boolean

    Đúng 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 tải xuống bị gián đoạn và có thể tiếp tục từ nơi bị gián đoạn.

  • mối nguy hiểm

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

  • endTime

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

    Thời điểm quá trình tải xuống kết thúc ở định dạng ISO 8601. Có thể được truyền trực tiếp đến hàm khởi tạo Ngày: 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 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_. Lỗi liên quan đến mạng bắt đầu bằng NETWORK_, lỗi liên quan đến quá trình ghi tệp vào hệ thống tệp bắt đầu bằng FILE_ và gián đoạn do người dùng thực hiện bắt đầu bằng USER_.

  • estimatedEndTime

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

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

  • tồn tại

    boolean

    Liệu tệp đã tải xuống có còn tồn tại hay không. Thông tin này có thể đã lỗi thời vì Chrome không tự động theo dõi hoạt động xoá tệp. Gọi search() để kích hoạt quá 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. Lưu ý rằng search() không đợi quá trình kiểm tra sự tồn tại kết thúc 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, search() có thể được gọi thường xuyên khi cần, nhưng sẽ không kiểm tra sự tồn tại của tệp thường xuyên hơn 10 giây một lần.

  • fileSize

    số

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

  • filename

    string

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

  • finalUrl

    string

    Chrome 54 trở lên

    URL tuyệt đối mà nội dung tải xuống này đang được tạo từ đó, sau tất cả các lần chuyển hướng.

  • id

    số

    Giá trị nhận dạng không đổi qua các phiên của trình duyệt.

  • ẩn danh

    boolean

    Sai nếu nội dung tải xuống này được ghi lại trong lịch sử, true nếu nội dung tải xuống này không được ghi lại.

  • điệu bộ

    string

    Loại MIME của tệp.

  • tạm dừng

    boolean

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

  • người giới thiệu

    string

    URL tuyệt đối.

  • startTime

    string

    Thời điểm 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 Ngày: 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.

  • url

    string

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

DownloadOptions

Thuộc tính

  • cơ thể

    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

    Một đường dẫn tệp tương ứng với thư mục Tài nguyên đã 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 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 loại MIME của tệp và tên tệp dự kiến.

  • tiêu đề

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

    Cá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. 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ỉ dành cho các khoá mà 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 trình 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

    string

    URL để tải xuống.

DownloadQuery

Thuộc tính

  • bytesReceived

    số không bắt buộc

    Số byte nhận được từ máy chủ lưu trữ tính đến thời điểm hiện tại, chưa tính đến việc nén tệp.

  • mối nguy hiểm

    DangerType không bắt buộc

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

  • endTime

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

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

  • endedAfter

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

    Giới hạn kết quả còn 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ả còn DownloadItem kết thúc trước mili giây đã cho ở định dạng ISO 8601.

  • error

    InterruptReason không bắt buộc

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

  • tồn tại

    boolean không bắt buộc

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

  • fileSize

    số không bắt buộc

    Số 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 cục bộ tuyệt đối.

  • filenameRegex

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

    Giới hạn kết quả đến 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à nội dung tải xuống này đang được tạo từ đó, sau tất cả các lần 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ả đến DownloadItemfinalUrl khớp với biểu thức chính quy đã cho.

  • id

    số không bắt buộc

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

  • giới hạn

    số không bắt buộc

    Số lượng tối đa các kết quả trùng khớp DownloadItem được trả về. Giá trị mặc định là 1000. Được đặt thành 0 để trả về tất cả các DownloadItem trùng khớp. Hãy xem search để biết cách phâ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 tiền tố bằng dấu gạch nối: '-startTime'.

  • tạm dừng

    boolean không bắt buộc

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

  • 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, url hoặc finalUrl chứa tất cả cá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 điểm 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ả thành DownloadItem bắt đầu sau mili giây đã cho ở định dạng ISO 8601.

  • startedBefore

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

    Giới hạn kết quả thành DownloadItem bắt đầu trước mili giây đã cho ở đị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

    số 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.

  • totalBytesGreater

    số không bắt buộc

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

  • totalBytesLess

    số không bắt buộc

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

  • url

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

    URL tuyệt đối mà quá trình tải xuống này bắt đầu từ đó, trướ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ả đến DownloadItemurl khớp với biểu thức chính quy đã cho.

FilenameConflictAction

đơn hoá

Để tránh trùng lặp, filename được thay đổi để bao gồm bộ đếm trước đuôi tệp.

ghi đè

Tệp hiện tại sẽ bị ghi đè bằng tệp mới.

câu lệnh

Người dùng sẽ thấy một hộp thoại của bộ chọn tệp.

Enum

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

    string

    Đích đến mới DownloadItem.filename của DownloadItem, dưới dạng đường dẫn tương ứng với thư mục Tệp đã 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 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

    số 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ó hình vuông, có kích thước * kích thước 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. Sẽ có lỗi khi chỉ định bất kỳ kích thước nào khác.

HeaderNameValuePair

Thuộc tính

  • tên

    string

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

  • value

    string

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

HttpMethod

Enum

InterruptReason

Enum

State

in_progress

Tệp 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 làm gián đoạn kết nối với máy chủ lưu trữ tệp.

đã hoàn tất

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

Enum

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()

Lời hứa
chrome.downloads.acceptDanger(
  downloadId: number,
  callback?: function,
)

Nhắc người dùng chấp nhận một nội dung tải xuống nguy hiểm. Chỉ có thể gọi được từ bối cảnh hiển thị (thẻ, cửa sổ hoặc cửa sổ bật lên hành động 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 nội dung 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à nội dung tải xuống đó không nguy hiểm hoặc mối nguy hiểm đã được chấp nhận, thì tệp tạm thời đó được đổi tên thành tên tệp đích, state sẽ chuyển thành "hoàn tất" và onChanged sẽ kích hoạt.

Tham số

  • downloadId

    số

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

  • số gọi lại

    hàm không bắt buộc

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

    () => void

Giá trị trả về

  • Promise<void>

    Chrome 96 trở lên

    Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.

cancel()

Lời hứa
chrome.downloads.cancel(
  downloadId: number,
  callback?: function,
)

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, bị gián đoạn hoặc không tồn tại nữa.

Tham số

  • downloadId

    số

    Mã của tệp tải xuống cần huỷ.

  • số gọi lại

    hàm không bắt buộc

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

    () => void

Giá trị trả về

  • Promise<void>

    Chrome 96 trở lên

    Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.

download()

Lời hứa
chrome.downloads.download(
  options: DownloadOptions,
  callback?: function,
)

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 làm tên máy chủ. Nếu bạn chỉ định cả filenamesaveAs, thì hộp thoại Lưu dưới dạng sẽ xuất hiện và được điền sẵn filename đã 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ả. Không phải lúc nào chuỗi lỗi cũng duy trì 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 phần này.

Tham số

  • tùy chọn

    Nội dung cần tải xuống và cách thức tải xuống.

  • số gọi lại

    hàm không bắt buộc

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

    (downloadId: number) => void

    • downloadId

      số

Giá trị trả về

  • Promise<number>

    Chrome 96 trở lên

    Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.

erase()

Lời hứa
chrome.downloads.erase(
  query: DownloadQuery,
  callback?: function,
)

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

Tham số

  • truy vấn
  • số gọi lại

    hàm không bắt buộc

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

    (erasedIds: number[]) => void

    • erasedIds

      số[]

Giá trị trả về

  • Promise<number[]>

    Chrome 96 trở lên

    Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.

getFileIcon()

Lời hứa
chrome.downloads.getFileIcon(
  downloadId: number,
  options?: GetFileIconOptions,
  callback?: function,
)

Truy xuất biểu tượng cho nội dung tải xuống được chỉ định. Đối với các tệp mới tải xuống, bạn sẽ thấy biểu tượng tệp sau khi nhận được sự kiện onCreated. Hình ảnh mà hàm này trả về 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. Quá trình 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 cả trạng thái của tệp tải xuống, nền tảng, 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ẽ xuất hiện thông báo lỗi.

Tham 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

  • số gọi lại

    hàm không bắt buộc

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

    (iconURL?: string) => void

    • iconURL

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

Giá trị trả về

  • Promise<string | không xác định>

    Chrome 96 trở lên

    Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.

open()

Lời hứa
chrome.downloads.open(
  downloadId: number,
  callback?: function,
)

Mở tệp đã tải xuống ngay nếu DownloadItem đã hoàn tất; nếu không thì sẽ 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 trong lần đầu mở mục. 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.

Tham số

  • downloadId

    số

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

  • số gọi lại

    hàm không bắt buộc

    Chrome 123 trở lên

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

    () => void

Giá trị trả về

  • Promise<void>

    Chrome 123 trở lên

    Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.

pause()

Lời hứa
chrome.downloads.pause(
  downloadId: number,
  callback?: function,
)

Tạm dừng quá trình 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 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.

Tham số

  • downloadId

    số

    Mã của quá trình tải xuống cần tạm dừng.

  • số gọi lại

    hàm không bắt buộc

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

    () => void

Giá trị trả về

  • Promise<void>

    Chrome 96 trở lên

    Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.

removeFile()

Lời hứa
chrome.downloads.removeFile(
  downloadId: number,
  callback?: function,
)

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.

Tham số

  • downloadId

    số

  • số gọi lại

    hàm không bắt buộc

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

    () => void

Giá trị trả về

  • Promise<void>

    Chrome 96 trở lên

    Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.

resume()

Lời hứa
chrome.downloads.resume(
  downloadId: number,
  callback?: function,
)

Tiếp tục quá trình tải xuống đã tạm dừng. Nếu yêu cầu thành công thì quá trình tải xuống đang diễn ra và huỷ tạm dừng. Nếu không, runtime.lastError sẽ chứa 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.

Tham số

  • downloadId

    số

    Mã của quá trình tải xuống cần tiếp tục.

  • số gọi lại

    hàm không bắt buộc

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

    () => void

Giá trị trả về

  • Promise<void>

    Chrome 96 trở lên

    Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.

Lời hứa
chrome.downloads.search(
  query: DownloadQuery,
  callback?: function,
)

Tìm DownloadItem. Đặt query thành đối tượng trống để nhận tất cả DownloadItem. Để có một DownloadItem cụ thể, bạn chỉ cần đặt trường id. Để chuyển trang thông qua một số lượng lớn các mục, hãy thiết lập orderBy: ['-startTime'], đặt limit thành số lượng mục trên mỗi trang rồi đặt startedAfter thành startTime của mục cuối cùng ở trang cuối.

Tham số

Giá trị trả về

  • Promise<DownloadItem[]>

    Chrome 96 trở lên

    Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.

setShelfEnabled()

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

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

Bật hoặc tắt giá 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ệ này sẽ bị tắt khi có ít nhất một tiện ích đã tắt. Khi bật kệ trong khi ít nhất một tiện ích khác đã tắt, kệ sẽ trả về thông báo lỗi thông qua runtime.lastError. Cần có quyền "downloads.shelf" cùng với quyền "downloads".

Tham số

  • đang bật

    boolean

setUiOptions()

Lời hứa Chrome 105 trở lên
chrome.downloads.setUiOptions(
  options: UiOptions,
  callback?: function,
)

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. Chỉ cần ít nhất một tiện ích đã đặt UiOptions.enabled thành false, thì giao diện người dùng tải xuống sẽ bị ẩn. Nếu bạn đặt UiOptions.enabled thành true (đúng) khi ít nhất một tiện ích khác đã tắt, tiện ích sẽ trả về lỗi thông qua runtime.lastError. Cần có quyền "downloads.ui" cùng với quyền "downloads".

Tham số

  • tùy chọn

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

  • số gọi lại

    hàm không bắt buộc

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

    () => void

Giá trị trả về

  • Promise<void>

    Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.

show()

chrome.downloads.show(
  downloadId: number,
)

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.

Tham số

  • downloadId

    số

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

showDefaultFolder()

chrome.downloads.showDefaultFolder()

Hiển thị thư mục Tệp đã tải xuống mặc định trong 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 ngoại trừ bytesReceivedestimatedEndTime thay đổi, sự kiện này sẽ kích hoạt bằng downloadId và một đối tượng chứa các thuộc tính đã thay đổi.

Tham số

  • số gọi lại

    hàm

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

    (downloadDelta: DownloadDelta) => void

onCreated

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

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

Tham số

  • số gọi lại

    hàm

    Tham số callback sẽ 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 phần mở rộng sẽ có cơ hội ghi đè lên mục tiêu DownloadItem.filename. Mỗi tiện ích chỉ được đăng ký một trình nghe cho sự kiện này. Mỗi trình nghe phải gọi suggest chính xác một lần, đồ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ộ và cũng không trả về true, thì suggest sẽ tự động được gọi. DownloadItem sẽ không hoàn tất cho đến khi tất cả trình nghe gọi suggest. Trình nghe có thể gọi suggest mà không có bất kỳ đối số nào để cho phép tải xuống sử dụng downloadItem.filename cho tên tệp hoặc truyền đối tượng suggestion đến suggest nhằm ghi đè tên tệp mục tiêu. Nếu có nhiều đuôi tệp ghi đè tên tệp, thì tiện ích cuối cùng được cài đặt có trình nghe truyền đối tượng suggestion đến suggest sẽ chiến thắng. Để tránh nhầm lẫn về việc tiện ích nào sẽ giành chiến thắng, 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 do download bắt đầu 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 chuyển filename đến download.

Tham số

  • số gọi lại

    hàm

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

    (downloadItem: DownloadItem, suggest: function) => void

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ý.

Tham số

  • số gọi lại

    hàm

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

    (downloadId: number) => void

    • downloadId

      số