chrome.downloads

Nội dung mô tả

Dùng API chrome.downloads để khởi tạo, giám sát, thao tác và tì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ề việc sử dụng API chrome.downloads trong thư mục examples/api/downloads. Để biết các ví dụ khác và để được trợ giúp trong việc 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.

những nội dung

Tệp tải xuống được xác định là tệp độ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 đế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ụ: có thể thay đổi chế độ cài đặt của trình duyệt hoặc máy tính.

an toàn

Quá trình tải xuống không gây nguy hiểm cho máy tính của người dùng.

được chấp nhận

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

Liệt kê

"file"

"url"

"asyncScanning"

"asyncLocalPasswordScanning"

"passwordProtected" (được bảo vệ bằng mật khẩu được bảo vệ)

"sensitiveContentWarning"

"sensitiveContentBlock"

"deepScannedFailed"

"deepScannedSafe"

"promptForScanning"

"promptForLocalPasswordScanning"

"accountCompromise"

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

    Nội dung thay đổi trong canResume, nếu có.

  • nguy hiểm

    StringDelta không bắt buộc

    Nội dung thay đổi trong danger, nếu có.

  • endTime

    StringDelta không bắt buộc

    Nội dung thay đổi trong endTime, nếu có.

  • error

    StringDelta không bắt buộc

    Nội dung thay đổi trong error, nếu có.

  • tồn tại

    BooleanDelta không bắt buộc

    Nội dung thay đổi trong exists, nếu có.

  • fileSize

    DoubleDelta không bắt buộc

    Nội dung thay đổi trong fileSize, nếu có.

  • filename

    StringDelta không bắt buộc

    Nội dung thay đổi trong filename, nếu có.

  • finalUrl

    StringDelta không bắt buộc

    Chrome 54 trở lên

    Nội dung thay đổi trong finalUrl, nếu có.

  • id

    number

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

  • điệu bộ

    StringDelta không bắt buộc

    Nội dung thay đổi trong mime, nếu có.

  • tạm dừng

    BooleanDelta không bắt buộc

    Nội dung thay đổi trong paused, nếu có.

  • startTime

    StringDelta không bắt buộc

    Nội dung thay đổi trong startTime, nếu có.

  • state

    StringDelta không bắt buộc

    Nội dung thay đổi trong state, nếu có.

  • totalBytes

    DoubleDelta không bắt buộc

    Nội dung thay đổi trong totalBytes, nếu có.

  • url

    StringDelta không bắt buộc

    Nội dung 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 cho tiện ích đã khởi tạo quá trình tải xuống này nếu quá trình tải xuống này là do một tiện ích khởi tạo. Không thay đổi sau khi bạn đặt.

  • byExtensionName

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

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

  • bytesReceived

    number

    Số byte đã nhận được từ trước đến nay từ máy chủ mà không 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.

  • nguy hiểm

    Cho biết tệp 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 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 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à lỗi gián đoạn do người dùng gây ra 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 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 để 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 hàm 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ả của 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 mỗi khi cần thiết, 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

    number

    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à từ đó nội dung tải xuống này đang được thực hiện, sau tất cả các lượt chuyển hướng.

  • id

    number

    Giá trị nhận dạng cố định trên các phiên trình duyệt.

  • ẩn danh

    boolean

    Nếu lượt tải xuống này được ghi lại trong lịch sử, thì giá trị là true nếu lượt 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.

  • referrer

    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 Date: chrome.downloads.search({}, function(items){items.forEach(function(item){console.log(new Date(item.startTime))})})

  • 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

    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 trước khi có bất kỳ lệnh 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ệp đã tải xuống để chứa tệp đã tải xuống, có thể chứa 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 loại MIME của tệp và tên tệp dự kiến đã được xác định.

  • headers

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

    Tiêu đề HTTP bổ sung sẽ gửi kèm theo 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ỉ dành cho những khoá được XMLHttpRequest cho phép.

  • method

    HttpMethod không bắt buộc

    Phương thức HTTP 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 cần tải xuống.

DownloadQuery

Thuộc tính

  • bytesReceived

    số không bắt buộc

    Số byte đã nhận được từ trước đến nay từ máy chủ mà không tính đến việc nén tệp.

  • nguy hiểm

    DangerType không bắt buộc

    Cho biết tệp 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 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ả trong DownloadItem kết thúc sau mili giây đã cho ở định dạng ISO 8601

  • endedBefore

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

    Giới hạn kết quả trong 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 được 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ả trong 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à từ đó nội dung tải xuống này đang được thực hiện, sau tất cả các lượt 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ả trong 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 DownloadItem phù hợp được trả về. Giá trị mặc định là 1000. Đặt là 0 để trả về tất cả DownloadItem phù hợ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 thiết lập 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.

  • query

    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 đ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 các kết quả trong 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ả trong DownloadItem bắt đầu trước mili giây đã cho ở định dạng ISO 8601.

  • state

    Trạng thái 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ả trong DownloadItemtotalBytes lớn hơn số nguyên đã cho.

  • totalBytesLess

    số không bắt buộc

    Giới hạn kết quả trong 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 trước khi có bất kỳ lệnh chuyển hướng nào.

  • urlRegex

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

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

FilenameConflictAction

đồng nhất

Để tránh trùng lặp, filename được thay đổi để đưa vào một bộ đếm trước đuôi tên tệp.

ghi đè

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

lời nhắc

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

Liệt kê

"uniquify"

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

    Mục tiêu mới của DownloadItemDownloadItem.filename, 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 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

     không bắt buộc

    Kích thước của biểu tượng được trả về. Biểu tượng sẽ là hình vuông với kích thước * pixel kích thước. 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ẽ là 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 tiêu đề HTTP.

  • value

    string

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

HttpMethod

Liệt kê

InterruptReason

Liệt kê

"FILE_FAILED"

"FILE_ACCESS_DENIED"

"FILE_NO_SPACE"

"FILE_NAME_TOO_LONG"

"FILE_TOO_LARGE"

"FILE_VIRUS_INFECTED"

"FILE_TRANSIENT_ERROR"

"FILE_BLOCKED"

"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_UNAUTHORIZED"

"SERVER_FORBIDDEN"

"SERVER_UNREACHABLE"

"SERVER_CONTENT_LENGTH_MISMATCH"

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

đã hoàn tất

Quá trình tải xuống đã hoàn tất.

Liệt kê

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

Cam kết
chrome.downloads.acceptDanger(
  downloadId: number,
  callback?: function,
)

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

Tham số

  • downloadId

    number

    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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.

cancel()

Cam kết
chrome.downloads.cancel(
  downloadId: number,
  callback?: function,
)

Huỷ quá trình tải xuống. Khi callback được 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 còn tồn tại nữa.

Tham số

  • downloadId

    number

    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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.

download()

Cam kết
chrome.downloads.download(
  options: DownloadOptions,
  callback?: function,
)

Tải 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ủ. Nếu bạn chỉ định cả filenamesaveAs, thì hộp thoại Lưu dưới dạng sẽ hiển thị 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 có lỗi khi bắt đầu tải xuống, thì callback sẽ được gọi bằng downloadId=undefinedruntime.lastError sẽ chứa chuỗi mô tả. Các chuỗi lỗi không đảm bảo sẽ 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.

Tham số

  • tùy chọn

    Nội dung 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

      number

Giá trị trả về

  • Hứa hẹn<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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.

erase()

Cam kết
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. Sự kiện onErased sẽ kích hoạt cho từng DownloadItem khớp với query, sau đó callback sẽ được gọi.

Tham số

  • 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ề

  • Hứa hẹn<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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.

getFileIcon()

Cam kết
chrome.downloads.getFileIcon(
  downloadId: number,
  options?: GetFileIconOptions,
  callback?: function,
)

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

Tham số

  • downloadId

    number

    Giá trị nhận dạng cho 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ề

  • Hứa hẹn<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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.

open()

Cam kết
chrome.downloads.open(
  downloadId: number,
  callback?: function,
)

Mở tệp đã tải xuống ngay bây giờ nếu DownloadItem đã hoàn tất; nếu không sẽ trả về lỗi thông qua runtime.lastError. Phương thức này cần có 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 cử chỉ của người dùng.

Tham số

  • downloadId

    number

    Giá trị nhận dạng cho 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.

pause()

Cam kết
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, quá trình tải xuống sẽ ở trạng thái tạm dừng. Nếu không, runtime.lastError chứa thông báo lỗi. Yêu cầu sẽ không thành công nếu tệp tải xuống không hoạt động.

Tham số

  • downloadId

    number

    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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.

removeFile()

Cam kết
chrome.downloads.removeFile(
  downloadId: number,
  callback?: function,
)

Hãy xoá tệp đã tải xuống nếu tệp đó còn 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

    number

  • 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.

resume()

Cam kết
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, quá trình tải xuống đang được tiến hành và được huỷ tạm dừng. Nếu không, runtime.lastError chứa thông báo lỗi. Yêu cầu sẽ không thành công nếu tệp tải xuống không hoạt động.

Tham số

  • downloadId

    number

    Mã của quá trình tải xuống để 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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.

Cam kết
chrome.downloads.search(
  query: DownloadQuery,
  callback?: function,
)

Tìm DownloadItem. Đặt query thành đối tượng trống để nhận toàn bộ DownloadItem. Để nhận một DownloadItem cụ thể, chỉ đặt trường id. Để chuyển trang 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 và đặt startedAfter thành startTime của mục cuối cùng ở trang cuối cùng.

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 để có 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. Lời hứa sẽ được phân giải bằng cùng một loại được truyền đến lệnh gọi lại.

setShelfEnabled()

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

Tham số

  • đang bật

    boolean

setUiOptions()

Cam kết 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. Miễn là í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 trong khi ít nhất một tiện ích khác đã tắt, thì tiện ích này sẽ trả về một lỗi thông qua runtime.lastError. Cần có quyền "downloads.ui" ngoà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 để có 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. Lời hứa sẽ được phân giải bằng cùng một 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 trong trình quản lý tệp.

Tham số

  • downloadId

    number

    Giá trị nhận dạng cho 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 cùng với 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 sẽ 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 tiện ích sẽ có cơ hội ghi đè DownloadItem.filename mục tiêu. Mỗi tiện ích không được đăng ký nhiều 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 một cách đồng bộ và cũng không trả về true, thì suggest sẽ được tự động 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 quá trình tải xuống sử dụng downloadItem.filename cho tên tệp hoặc truyền đố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 được cài đặt gần đây nhấ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 với downloadId khi nội dung 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

      number