chrome.downloads

คำอธิบาย

ใช้ chrome.downloads API เพื่อเริ่มต้น ตรวจสอบ จัดการ และค้นหาการดาวน์โหลดโดยใช้โปรแกรม

สิทธิ์

downloads

คุณต้องประกาศสิทธิ์ "downloads" ในไฟล์ Manifest ของส่วนขยายเพื่อใช้ API นี้

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

ตัวอย่าง

คุณดูตัวอย่างการใช้ chrome.downloads API แบบง่ายๆ ได้ในไดเรกทอรี examples/api/downloads ดูตัวอย่างอื่นๆ และความช่วยเหลือในการดูซอร์สโค้ดได้ที่ตัวอย่าง

ประเภท

BooleanDelta

พร็อพเพอร์ตี้

  • current

    บูลีน ไม่บังคับ

  • ก่อนหน้า

    บูลีน ไม่บังคับ

DangerType

ไฟล์

ชื่อไฟล์ที่ดาวน์โหลดน่าสงสัย

URL

URL ของการดาวน์โหลดเป็นที่ทราบกันว่ามีอันตราย

เนื้อหา

ระบบทราบว่าไฟล์ที่ดาวน์โหลดเป็นอันตราย

พบไม่บ่อย

URL ของการดาวน์โหลดไม่ได้มีการดาวน์โหลดกันโดยทั่วไปและอาจเป็นอันตราย

ผู้จัด

การดาวน์โหลดมาจากโฮสต์ที่ทราบกันว่าเผยแพร่ไบนารีที่เป็นอันตรายและอาจเป็นอันตราย

ไม่พึงประสงค์

การดาวน์โหลดอาจไม่พึงประสงค์หรือไม่ปลอดภัย เช่น อาจทำการเปลี่ยนแปลงการตั้งค่าเบราว์เซอร์หรือคอมพิวเตอร์

ปลอดภัย

การดาวน์โหลดไม่มีอันตรายที่ทราบแล้วต่อคอมพิวเตอร์ของผู้ใช้

ยอมรับ

ผู้ใช้ยอมรับการดาวน์โหลดที่เป็นอันตราย

ค่าแจกแจง

"file"

"url"

"content"

"ไม่พบ"

"host"

"ไม่ต้องการ"

"ปลอดภัย"

"ยอมรับ"

"allowlistedByPolicy"

"asyncScanning"

"asyncLocalPasswordScanning"

"passwordProtected"

"blockedTooLarge"

"sensitiveContentWarning"

"sensitiveContentBlock"

"deepScannedFailed"

"deepScannedSafe"

"deepScannedOpenedDangerous"

"promptForScanning"

"promptForLocalPasswordScanning"

"accountCompromise"

"blockedScanFailed"

DoubleDelta

พร็อพเพอร์ตี้

  • current

    หมายเลข ไม่บังคับ

  • ก่อนหน้า

    หมายเลข ไม่บังคับ

DownloadDelta

พร็อพเพอร์ตี้

  • canResume

    BooleanDelta ไม่บังคับ

    การเปลี่ยนแปลงใน canResume (หากมี)

  • อันตราย

    StringDelta ไม่บังคับ

    การเปลี่ยนแปลงใน danger (หากมี)

  • endTime

    StringDelta ไม่บังคับ

    การเปลี่ยนแปลงใน endTime (หากมี)

  • ข้อผิดพลาด

    StringDelta ไม่บังคับ

    การเปลี่ยนแปลงใน error (หากมี)

  • exists

    BooleanDelta ไม่บังคับ

    การเปลี่ยนแปลงใน exists (หากมี)

  • fileSize

    DoubleDelta ไม่บังคับ

    การเปลี่ยนแปลงใน fileSize (หากมี)

  • ชื่อไฟล์

    StringDelta ไม่บังคับ

    การเปลี่ยนแปลงใน filename (หากมี)

  • finalUrl

    StringDelta ไม่บังคับ

    Chrome 54 ขึ้นไป

    การเปลี่ยนแปลงใน finalUrl (หากมี)

  • id

    ตัวเลข

    id ของ DownloadItem ที่เปลี่ยนแปลง

  • mime

    StringDelta ไม่บังคับ

    การเปลี่ยนแปลงใน mime (หากมี)

  • หยุดชั่วคราว

    BooleanDelta ไม่บังคับ

    การเปลี่ยนแปลงใน paused (หากมี)

  • startTime

    StringDelta ไม่บังคับ

    การเปลี่ยนแปลงใน startTime (หากมี)

  • รัฐ

    StringDelta ไม่บังคับ

    การเปลี่ยนแปลงใน state (หากมี)

  • totalBytes

    DoubleDelta ไม่บังคับ

    การเปลี่ยนแปลงใน totalBytes (หากมี)

  • URL

    StringDelta ไม่บังคับ

    การเปลี่ยนแปลงใน url (หากมี)

DownloadItem

พร็อพเพอร์ตี้

  • byExtensionId

    สตริง ไม่บังคับ

    ตัวระบุของส่วนขยายที่เริ่มการดาวน์โหลดนี้ หากการดาวน์โหลดนี้เริ่มโดยส่วนขยาย จะไม่เปลี่ยนแปลงเมื่อตั้งค่าแล้ว

  • byExtensionName

    สตริง ไม่บังคับ

    ชื่อที่แปลแล้วของส่วนขยายที่เริ่มการดาวน์โหลดนี้ หากการดาวน์โหลดนี้เริ่มโดยส่วนขยาย อาจเปลี่ยนแปลงหากส่วนขยายเปลี่ยนชื่อหรือหากผู้ใช้เปลี่ยนภาษา

  • bytesReceived

    ตัวเลข

    จำนวนไบต์ที่ได้รับจากโฮสต์จนถึงตอนนี้ โดยไม่พิจารณาการบีบอัดไฟล์

  • canResume

    บูลีน

    จริงหากการดาวน์โหลดกำลังดำเนินการและหยุดชั่วคราว หรือหากถูกขัดจังหวะและสามารถดำเนินการต่อได้จากจุดที่ถูกขัดจังหวะ

  • อันตราย

    ตัวบ่งชี้ว่าระบบคิดว่าการดาวน์โหลดนี้ปลอดภัยหรือทราบว่าน่าสงสัย

  • endTime

    สตริง ไม่บังคับ

    เวลาที่การดาวน์โหลดสิ้นสุดในรูปแบบ ISO 8601 อาจส่งไปยังตัวสร้างวันที่โดยตรง: chrome.downloads.search({}, function(items){items.forEach(function(item){if (item.endTime) console.log(new Date(item.endTime))})})

  • ข้อผิดพลาด

    InterruptReason ไม่บังคับ

    สาเหตุที่ทำให้การดาวน์โหลดถูกขัดจังหวะ ข้อผิดพลาด HTTP หลายประเภทอาจจัดกลุ่มอยู่ภายใต้ข้อผิดพลาดรายการใดรายการหนึ่งที่ขึ้นต้นด้วย SERVER_ ข้อผิดพลาดที่เกี่ยวข้องกับเครือข่ายจะขึ้นต้นด้วย NETWORK_ ข้อผิดพลาดที่เกี่ยวข้องกับกระบวนการเขียนไฟล์ไปยังระบบไฟล์จะขึ้นต้นด้วย FILE_ และการหยุดชะงักที่ผู้ใช้เป็นผู้เริ่มจะขึ้นต้นด้วย USER_

  • estimatedEndTime

    สตริง ไม่บังคับ

    เวลาโดยประมาณที่การดาวน์โหลดจะเสร็จสมบูรณ์ในรูปแบบ ISO 8601 อาจส่งไปยังตัวสร้างวันที่โดยตรง: chrome.downloads.search({}, function(items){items.forEach(function(item){if (item.estimatedEndTime) console.log(new Date(item.estimatedEndTime))})})

  • exists

    บูลีน

    ไฟล์ที่ดาวน์โหลดแล้วยังคงมีอยู่หรือไม่ ข้อมูลนี้อาจล้าสมัยเนื่องจาก Chrome ไม่ได้ตรวจสอบการนำไฟล์ออกโดยอัตโนมัติ เรียกใช้ search() เพื่อทริกเกอร์การตรวจสอบว่ามีไฟล์อยู่หรือไม่ เมื่อการตรวจสอบการมีอยู่เสร็จสมบูรณ์ หากไฟล์ถูกลบไปแล้ว ระบบจะทริกเกอร์เหตุการณ์ onChanged โปรดทราบว่า search() จะไม่รอให้การตรวจสอบว่ามีไฟล์อยู่หรือไม่เสร็จสิ้นก่อนที่จะแสดงผล ดังนั้นผลลัพธ์จาก search() อาจไม่แสดงระบบไฟล์อย่างถูกต้อง นอกจากนี้ คุณอาจเรียกใช้ search() ได้บ่อยเท่าที่จำเป็น แต่จะไม่ตรวจสอบว่ามีไฟล์อยู่บ่อยกว่า 1 ครั้งทุกๆ 10 วินาที

  • fileSize

    ตัวเลข

    จำนวนไบต์ในไฟล์ทั้งหมดหลังการคลายการบีบอัด หรือ -1 หากไม่ทราบ

  • ชื่อไฟล์

    สตริง

    เส้นทางภายในแบบสัมบูรณ์

  • finalUrl

    สตริง

    Chrome 54 ขึ้นไป

    URL แบบเต็มที่ใช้ในการดาวน์โหลดนี้หลังจากมีการเปลี่ยนเส้นทางทั้งหมด

  • id

    ตัวเลข

    ตัวระบุที่คงอยู่ตลอดเซสชันของเบราว์เซอร์

  • ไม่ระบุตัวตน

    บูลีน

    เท็จหากมีการบันทึกการดาวน์โหลดนี้ในประวัติ จริงหากไม่มีการบันทึก

  • mime

    สตริง

    ประเภท MIME ของไฟล์

  • หยุดชั่วคราว

    บูลีน

    จริง หากการดาวน์โหลดหยุดอ่านข้อมูลจากโฮสต์ แต่ยังคงเปิดการเชื่อมต่อไว้

  • URL ที่มา

    สตริง

    URL แบบเต็ม

  • startTime

    สตริง

    เวลาที่เริ่มดาวน์โหลดในรูปแบบ ISO 8601 อาจส่งไปยังตัวสร้างวันที่โดยตรง: chrome.downloads.search({}, function(items){items.forEach(function(item){console.log(new Date(item.startTime))})})

  • รัฐ

    ระบุว่าการดาวน์โหลดกำลังดำเนินการ หยุดชั่วคราว หรือเสร็จสมบูรณ์แล้ว

  • totalBytes

    ตัวเลข

    จำนวนไบต์ในไฟล์ทั้งหมดโดยไม่พิจารณาการบีบอัดไฟล์ หรือ -1 หากไม่ทราบ

  • URL

    สตริง

    URL แบบเต็มที่การดาวน์โหลดนี้เริ่มต้นจากก่อนการเปลี่ยนเส้นทาง

DownloadOptions

พร็อพเพอร์ตี้

  • เนื้อความ

    สตริง ไม่บังคับ

    เนื้อหาของโพสต์

  • conflictAction

    FilenameConflictAction ไม่บังคับ

    การดำเนินการที่ต้องทำหากมี filename อยู่แล้ว

  • ชื่อไฟล์

    สตริง ไม่บังคับ

    เส้นทางไฟล์ที่สัมพันธ์กับไดเรกทอรี Downloads เพื่อเก็บไฟล์ที่ดาวน์โหลด ซึ่งอาจมีไดเรกทอรีย่อย เส้นทางแบบสัมบูรณ์ เส้นทางว่าง และเส้นทางที่มีการอ้างอิงย้อนกลับ ".." จะทำให้เกิดข้อผิดพลาด onDeterminingFilename ช่วยให้แนะนำชื่อไฟล์ได้หลังจากที่กำหนดประเภท MIME ของไฟล์และชื่อไฟล์เบื้องต้นแล้ว

  • ส่วนหัว

    HeaderNameValuePair[] ไม่บังคับ

    ส่วนหัว HTTP เพิ่มเติมที่จะส่งพร้อมกับคำขอหาก URL ใช้โปรโตคอล HTTP[s] ส่วนหัวแต่ละรายการจะแสดงเป็นพจนานุกรมที่มีคีย์ name และ value หรือ binaryValue โดยจำกัดเฉพาะส่วนหัวที่ XMLHttpRequest อนุญาต

  • method

    HttpMethod ไม่บังคับ

    เมธอด HTTP ที่จะใช้หาก URL ใช้โปรโตคอล HTTP[S]

  • saveAs

    บูลีน ไม่บังคับ

    ใช้ตัวเลือกไฟล์เพื่ออนุญาตให้ผู้ใช้เลือกชื่อไฟล์ไม่ว่า filename จะตั้งค่าไว้หรือไม่หรือมีอยู่แล้วก็ตาม

  • URL

    สตริง

    URL ที่จะดาวน์โหลด

DownloadQuery

พร็อพเพอร์ตี้

  • bytesReceived

    หมายเลข ไม่บังคับ

    จำนวนไบต์ที่ได้รับจากโฮสต์จนถึงตอนนี้ โดยไม่พิจารณาการบีบอัดไฟล์

  • อันตราย

    DangerType ไม่บังคับ

    ตัวบ่งชี้ว่าระบบคิดว่าการดาวน์โหลดนี้ปลอดภัยหรือทราบว่าน่าสงสัย

  • endTime

    สตริง ไม่บังคับ

    เวลาที่การดาวน์โหลดสิ้นสุดในรูปแบบ ISO 8601

  • endedAfter

    สตริง ไม่บังคับ

    จำกัดผลลัพธ์เป็น DownloadItem ที่สิ้นสุดหลังจากเวลาที่ระบุเป็นมิลลิวินาทีในรูปแบบ ISO 8601

  • endedBefore

    สตริง ไม่บังคับ

    จำกัดผลลัพธ์เป็น DownloadItem ที่สิ้นสุดก่อน ms ที่ระบุในรูปแบบ ISO 8601

  • ข้อผิดพลาด

    InterruptReason ไม่บังคับ

    สาเหตุที่ทำให้การดาวน์โหลดถูกขัดจังหวะ

  • exists

    บูลีน ไม่บังคับ

    มีไฟล์ที่ดาวน์โหลดหรือไม่

  • fileSize

    หมายเลข ไม่บังคับ

    จำนวนไบต์ในไฟล์ทั้งหมดหลังการคลายการบีบอัด หรือ -1 หากไม่ทราบ

  • ชื่อไฟล์

    สตริง ไม่บังคับ

    เส้นทางภายในแบบสัมบูรณ์

  • filenameRegex

    สตริง ไม่บังคับ

    จำกัดผลลัพธ์เป็น DownloadItem ที่ filename ตรงกับนิพจน์ทั่วไปที่ระบุ

  • finalUrl

    สตริง ไม่บังคับ

    Chrome 54 ขึ้นไป

    URL แบบเต็มที่ใช้ในการดาวน์โหลดนี้หลังจากมีการเปลี่ยนเส้นทางทั้งหมด

  • finalUrlRegex

    สตริง ไม่บังคับ

    Chrome 54 ขึ้นไป

    จำกัดผลลัพธ์เป็น DownloadItem ที่ finalUrl ตรงกับนิพจน์ทั่วไปที่ระบุ

  • id

    หมายเลข ไม่บังคับ

    id ของ DownloadItem ที่จะค้นหา

  • ขีดจำกัด

    หมายเลข ไม่บังคับ

    จำนวนสูงสุดของ DownloadItem ที่ตรงกันซึ่งแสดง ค่าเริ่มต้นคือ 1,000 ตั้งค่าเป็น 0 เพื่อแสดง DownloadItem ที่ตรงกันทั้งหมด ดูsearch เพื่อดูวิธีเลื่อนดูผลการค้นหา

  • mime

    สตริง ไม่บังคับ

    ประเภท MIME ของไฟล์

  • orderBy

    string[] ไม่บังคับ

    ตั้งค่าองค์ประกอบของอาร์เรย์นี้เป็นพร็อพเพอร์ตี้ DownloadItem เพื่อจัดเรียงผลการค้นหา เช่น การตั้งค่า orderBy=['startTime'] จะจัดเรียง DownloadItem ตามเวลาเริ่มต้นจากน้อยไปมาก หากต้องการระบุลำดับจากมากไปน้อย ให้ใส่เครื่องหมายขีดหน้า เช่น "-startTime"

  • หยุดชั่วคราว

    บูลีน ไม่บังคับ

    จริง หากการดาวน์โหลดหยุดอ่านข้อมูลจากโฮสต์ แต่ยังคงเปิดการเชื่อมต่อไว้

  • query

    string[] ไม่บังคับ

    อาร์เรย์ของข้อความค้นหานี้จะจำกัดผลลัพธ์ไว้ที่ DownloadItem ซึ่งมี filename หรือ url หรือ finalUrl ที่มีข้อความค้นหาทั้งหมดที่ไม่ได้ขึ้นต้นด้วยเครื่องหมายขีดกลาง "-" และไม่มีข้อความค้นหาใดที่ขึ้นต้นด้วยเครื่องหมายขีดกลาง

  • startTime

    สตริง ไม่บังคับ

    เวลาที่เริ่มดาวน์โหลดในรูปแบบ ISO 8601

  • startedAfter

    สตริง ไม่บังคับ

    จำกัดผลลัพธ์เป็น DownloadItem ที่เริ่มต้นหลังจากเวลาที่ระบุเป็นมิลลิวินาทีในรูปแบบ ISO 8601

  • startedBefore

    สตริง ไม่บังคับ

    จำกัดผลลัพธ์เป็น DownloadItem ที่เริ่มต้นก่อน ms ที่ระบุในรูปแบบ ISO 8601

  • รัฐ

    รัฐ ไม่บังคับ

    ระบุว่าการดาวน์โหลดกำลังดำเนินการ หยุดชั่วคราว หรือเสร็จสมบูรณ์แล้ว

  • totalBytes

    หมายเลข ไม่บังคับ

    จำนวนไบต์ในไฟล์ทั้งหมดโดยไม่พิจารณาการบีบอัดไฟล์ หรือ -1 หากไม่ทราบ

  • totalBytesGreater

    หมายเลข ไม่บังคับ

    จำกัดผลลัพธ์เป็น DownloadItem ที่มี totalBytes มากกว่าจำนวนเต็มที่ระบุ

  • totalBytesLess

    หมายเลข ไม่บังคับ

    จำกัดผลลัพธ์เป็น DownloadItem ที่มี totalBytes น้อยกว่าจำนวนเต็มที่ระบุ

  • URL

    สตริง ไม่บังคับ

    URL แบบเต็มที่การดาวน์โหลดนี้เริ่มต้นจากก่อนการเปลี่ยนเส้นทาง

  • urlRegex

    สตริง ไม่บังคับ

    จำกัดผลลัพธ์เป็น DownloadItem ที่ url ตรงกับนิพจน์ทั่วไปที่ระบุ

FilenameConflictAction

ทำให้ไม่ซ้ำกัน

ระบบจะเปลี่ยน filename ให้มีตัวนับอยู่ก่อนนามสกุลไฟล์เพื่อหลีกเลี่ยงการซ้ำกัน

เขียนทับ

ระบบจะเขียนทับไฟล์ที่มีอยู่ด้วยไฟล์ใหม่

prompt

ผู้ใช้จะได้รับแจ้งด้วยกล่องโต้ตอบตัวเลือกไฟล์

ค่าแจกแจง

"uniquify"

"เขียนทับ"

"พรอมต์"

FilenameSuggestion

พร็อพเพอร์ตี้

  • conflictAction

    FilenameConflictAction ไม่บังคับ

    การดำเนินการที่ต้องทำหากมี filename อยู่แล้ว

  • ชื่อไฟล์

    สตริง

    DownloadItem เป้าหมายใหม่ของ DownloadItem.filename ซึ่งเป็นเส้นทางที่สัมพันธ์กับไดเรกทอรีดาวน์โหลดเริ่มต้นของผู้ใช้ ซึ่งอาจมีไดเรกทอรีย่อย ระบบจะไม่สนใจเส้นทางแบบสัมบูรณ์ เส้นทางว่าง และเส้นทางที่มีการอ้างอิงย้อนกลับ ".." filename จะถูกละเว้นหากมี Listener onDeterminingFilename ที่ลงทะเบียนโดยส่วนขยายใดๆ

GetFileIconOptions

พร็อพเพอร์ตี้

  • ขนาด

    หมายเลข ไม่บังคับ

    ขนาดของไอคอนที่แสดงผล ไอคอนจะเป็นสี่เหลี่ยมจัตุรัสที่มีขนาดด้านละ * พิกเซล ขนาดเริ่มต้นและขนาดใหญ่ที่สุดของไอคอนคือ 32x32 พิกเซล รองรับเฉพาะขนาด 16 และ 32 การระบุขนาดอื่นถือเป็นข้อผิดพลาด

HeaderNameValuePair

พร็อพเพอร์ตี้

  • ชื่อ

    สตริง

    ชื่อของส่วนหัว HTTP

  • value

    สตริง

    ค่าของส่วนหัว HTTP

HttpMethod

ค่าแจกแจง

"GET"

"POST"

InterruptReason

ค่าแจกแจง

"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

ขณะนี้การดาวน์โหลดกำลังรับข้อมูลจากเซิร์ฟเวอร์

ถูกขัดจังหวะ

ข้อผิดพลาดทำให้การเชื่อมต่อกับโฮสต์ไฟล์ขาดตอน

เสร็จสมบูรณ์

ดาวน์โหลดเสร็จเรียบร้อยแล้ว

ค่าแจกแจง

"in_progress"

"interrupted"

"เสร็จสมบูรณ์"

StringDelta

พร็อพเพอร์ตี้

  • current

    สตริง ไม่บังคับ

  • ก่อนหน้า

    สตริง ไม่บังคับ

UiOptions

Chrome 105 ขึ้นไป

พร็อพเพอร์ตี้

  • เปิดใช้อยู่

    บูลีน

    เปิดหรือปิดใช้ UI การดาวน์โหลด

เมธอด

acceptDanger()

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

แจ้งให้ผู้ใช้ยอมรับการดาวน์โหลดที่เป็นอันตราย เรียกใช้ได้จากบริบทที่มองเห็นได้เท่านั้น (แท็บ หน้าต่าง หรือป๊อปอัปการดำเนินการในหน้าเว็บ/เบราว์เซอร์) ไม่ยอมรับการดาวน์โหลดที่เป็นอันตรายโดยอัตโนมัติ หากยอมรับการดาวน์โหลด ระบบจะทริกเกอร์เหตุการณ์ onChanged มิเช่นนั้นจะไม่มีอะไรเกิดขึ้น เมื่อดึงข้อมูลทั้งหมดลงในไฟล์ชั่วคราวแล้ว และการดาวน์โหลดไม่เป็นอันตรายหรือยอมรับอันตรายแล้ว ระบบจะเปลี่ยนชื่อไฟล์ชั่วคราวเป็นชื่อไฟล์เป้าหมาย state จะเปลี่ยนเป็น "เสร็จสมบูรณ์" และ onChanged จะเริ่มทำงาน

พารามิเตอร์

  • downloadId

    ตัวเลข

    ตัวระบุสำหรับ DownloadItem

การคืนสินค้า

  • Promise<void>

    Chrome 96 ขึ้นไป

cancel()

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

ยกเลิกการดาวน์โหลด เมื่อเรียกใช้ callback ระบบจะยกเลิก ดาวน์โหลดเสร็จสมบูรณ์ ขัดจังหวะ หรือไม่มีการดาวน์โหลดอีกต่อไป

พารามิเตอร์

  • downloadId

    ตัวเลข

    รหัสของการดาวน์โหลดที่จะยกเลิก

การคืนสินค้า

  • Promise<void>

    Chrome 96 ขึ้นไป

download()

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

ดาวน์โหลด URL หาก URL ใช้โปรโตคอล HTTP[S] คำขอจะมีคุกกี้ทั้งหมดที่ตั้งค่าไว้สำหรับชื่อโฮสต์ในขณะนั้น หากระบุทั้ง filename และ saveAs ระบบจะแสดงกล่องโต้ตอบ "บันทึกเป็น" โดยจะป้อนข้อมูล filename ที่ระบุไว้ล่วงหน้า หากการดาวน์โหลดเริ่มต้นสำเร็จ ระบบจะเรียกใช้ callback พร้อมกับ downloadId ของ DownloadItem ใหม่ หากเกิดข้อผิดพลาดในการเริ่มดาวน์โหลด ระบบจะเรียกใช้ callback พร้อม downloadId=undefined และ runtime.lastError จะมีสตริงอธิบาย เราไม่รับประกันว่าสตริงข้อผิดพลาดจะยังคงเข้ากันได้แบบย้อนหลังระหว่างรุ่นต่างๆ ส่วนขยายต้องไม่แยกวิเคราะห์

พารามิเตอร์

  • ตัวเลือก

    สิ่งที่ต้องดาวน์โหลดและวิธีดาวน์โหลด

การคืนสินค้า

  • Promise<number>

    Chrome 96 ขึ้นไป

erase()

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

ลบDownloadItemที่ตรงกันออกจากประวัติโดยไม่ต้องลบไฟล์ที่ดาวน์โหลด เหตุการณ์ onErased จะทํางานสําหรับ DownloadItem แต่ละรายการที่ตรงกับ query จากนั้นระบบจะเรียกใช้ callback

พารามิเตอร์

การคืนสินค้า

  • Promise<number[]>

    Chrome 96 ขึ้นไป

getFileIcon()

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

ดึงข้อมูลไอคอนสำหรับการดาวน์โหลดที่ระบุ สำหรับการดาวน์โหลดใหม่ ไอคอนไฟล์จะพร้อมใช้งานหลังจากได้รับเหตุการณ์ onCreated รูปภาพที่ฟังก์ชันนี้แสดงในขณะที่กำลังดาวน์โหลดอาจแตกต่างจากรูปภาพที่แสดงหลังจากดาวน์โหลดเสร็จสมบูรณ์แล้ว การดึงข้อมูลไอคอนจะทำโดยการค้นหาระบบปฏิบัติการหรือชุดเครื่องมือพื้นฐาน ทั้งนี้ขึ้นอยู่กับแพลตฟอร์ม ดังนั้น ไอคอนที่แสดงจะขึ้นอยู่กับหลายปัจจัย ซึ่งรวมถึงสถานะการดาวน์โหลด แพลตฟอร์ม ประเภทไฟล์ที่ลงทะเบียน และธีมภาพ หากระบุไอคอนไฟล์ไม่ได้ runtime.lastError จะมีข้อความแสดงข้อผิดพลาด

พารามิเตอร์

  • downloadId

    ตัวเลข

    ตัวระบุสำหรับการดาวน์โหลด

  • ตัวเลือก

    GetFileIconOptions ไม่บังคับ

การคืนสินค้า

  • Promise<string | undefined>

    Chrome 96 ขึ้นไป

open()

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

เปิดไฟล์ที่ดาวน์โหลดในตอนนี้หาก DownloadItem เสร็จสมบูรณ์ หรือแสดงผลข้อผิดพลาดผ่าน runtime.lastError วิธีนี้ต้องใช้สิทธิ์ "downloads.open" นอกเหนือจากสิทธิ์ "downloads" เหตุการณ์ onChanged จะทริกเกอร์เมื่อเปิดรายการเป็นครั้งแรก เรียกใช้เมธอดนี้ได้เมื่อตอบสนองต่อท่าทางสัมผัสของผู้ใช้เท่านั้น

พารามิเตอร์

  • downloadId

    ตัวเลข

    ตัวระบุสำหรับไฟล์ที่ดาวน์โหลด

การคืนสินค้า

  • Promise<void>

    Chrome 123 ขึ้นไป

pause()

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

หยุดการดาวน์โหลดชั่วคราว หากคำขอสำเร็จ การดาวน์โหลดจะอยู่ในสถานะหยุดชั่วคราว ไม่เช่นนั้น runtime.lastError จะมีข้อความแสดงข้อผิดพลาด คำขอจะล้มเหลวหากการดาวน์โหลดไม่ทำงาน

พารามิเตอร์

  • downloadId

    ตัวเลข

    รหัสของการดาวน์โหลดที่จะหยุดชั่วคราว

การคืนสินค้า

  • Promise<void>

    Chrome 96 ขึ้นไป

removeFile()

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

นำไฟล์ที่ดาวน์โหลดออกหากมีอยู่และDownloadItemเสร็จสมบูรณ์แล้ว มิฉะนั้นให้ส่งคืนข้อผิดพลาดผ่าน runtime.lastError

พารามิเตอร์

  • downloadId

    ตัวเลข

การคืนสินค้า

  • Promise<void>

    Chrome 96 ขึ้นไป

resume()

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

ดาวน์โหลดต่อ หากคำขอสำเร็จ การดาวน์โหลดจะดำเนินต่อและจะยกเลิกการหยุดชั่วคราว ไม่เช่นนั้น runtime.lastError จะมีข้อความแสดงข้อผิดพลาด คำขอจะล้มเหลวหากการดาวน์โหลดไม่ทำงาน

พารามิเตอร์

  • downloadId

    ตัวเลข

    รหัสของการดาวน์โหลดที่จะดำเนินการต่อ

การคืนสินค้า

  • Promise<void>

    Chrome 96 ขึ้นไป
chrome.downloads.search(
  query: DownloadQuery,
)
: Promise<DownloadItem[]>

ค้นหา DownloadItem ตั้งค่า query เป็นออบเจ็กต์ที่ว่างเปล่าเพื่อรับ DownloadItem ทั้งหมด หากต้องการรับ DownloadItem ที่เฉพาะเจาะจง ให้ตั้งค่าเฉพาะฟิลด์ id หากต้องการเลื่อนดูรายการจำนวนมาก ให้ตั้งค่า orderBy: ['-startTime'] ตั้งค่า limit เป็นจำนวนรายการต่อหน้า และตั้งค่า startedAfter เป็น startTime ของรายการสุดท้ายจากหน้าสุดท้าย

พารามิเตอร์

การคืนสินค้า

setShelfEnabled()

เลิกใช้งานตั้งแต่ Chrome 117
chrome.downloads.setShelfEnabled(
  enabled: boolean,
)
: void

โปรดใช้ setUiOptions แทน

เปิดหรือปิดใช้ชั้นวางสีเทาที่ด้านล่างของทุกหน้าต่างที่เชื่อมโยงกับโปรไฟล์เบราว์เซอร์ปัจจุบัน ระบบจะปิดใช้ชั้นวางตราบใดที่ส่วนขยายอย่างน้อย 1 รายการปิดใช้ชั้นวาง การเปิดใช้ชั้นวางในขณะที่ส่วนขยายอื่นอย่างน้อย 1 รายการปิดใช้ชั้นวางจะทำให้เกิดข้อผิดพลาดผ่าน runtime.lastError ต้องมีสิทธิ์ "downloads.shelf" นอกเหนือจากสิทธิ์ "downloads"

พารามิเตอร์

  • เปิดใช้อยู่

    บูลีน

setUiOptions()

Chrome 105 ขึ้นไป
chrome.downloads.setUiOptions(
  options: UiOptions,
)
: Promise<void>

เปลี่ยน UI การดาวน์โหลดของทุกหน้าต่างที่เชื่อมโยงกับโปรไฟล์เบราว์เซอร์ปัจจุบัน ตราบใดที่ส่วนขยายอย่างน้อย 1 รายการตั้งค่า UiOptions.enabled เป็น false ระบบจะซ่อน UI การดาวน์โหลด การตั้งค่า UiOptions.enabled เป็นจริงในขณะที่ส่วนขยายอื่นอย่างน้อย 1 รายการปิดใช้ไว้จะแสดงข้อผิดพลาดผ่าน runtime.lastError ต้องมีสิทธิ์ "downloads.ui" นอกเหนือจากสิทธิ์ "downloads"

พารามิเตอร์

  • ตัวเลือก

    แคปซูลการเปลี่ยนแปลง UI การดาวน์โหลด

การคืนสินค้า

  • Promise<void>

show()

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

แสดงไฟล์ที่ดาวน์โหลดในโฟลเดอร์ในโปรแกรมจัดการไฟล์

พารามิเตอร์

  • downloadId

    ตัวเลข

    ตัวระบุสำหรับไฟล์ที่ดาวน์โหลด

showDefaultFolder()

chrome.downloads.showDefaultFolder(): void

แสดงโฟลเดอร์ดาวน์โหลดเริ่มต้นในเครื่องมือจัดการไฟล์

กิจกรรม

onChanged

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

เมื่อพร็อพเพอร์ตี้ของ DownloadItem ยกเว้น bytesReceived และ estimatedEndTime มีการเปลี่ยนแปลง เหตุการณ์นี้จะทริกเกอร์พร้อมกับ downloadId และออบเจ็กต์ที่มีพร็อพเพอร์ตี้ที่เปลี่ยนแปลง

พารามิเตอร์

  • callback

    ฟังก์ชัน

    พารามิเตอร์ callback มีลักษณะดังนี้

    (downloadDelta: DownloadDelta) => void

onCreated

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

เหตุการณ์นี้จะทริกเกอร์ด้วยออบเจ็กต์ DownloadItem เมื่อการดาวน์โหลดเริ่มต้น

พารามิเตอร์

  • callback

    ฟังก์ชัน

    พารามิเตอร์ callback มีลักษณะดังนี้

    (downloadItem: DownloadItem) => void

onDeterminingFilename

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

ในระหว่างกระบวนการกำหนดชื่อไฟล์ ส่วนขยายจะมีโอกาสที่จะลบล้างDownloadItem.filenameเป้าหมาย ส่วนขยายแต่ละรายการจะลงทะเบียนผู้ฟังสำหรับกิจกรรมนี้ได้ไม่เกิน 1 คน ผู้ฟังแต่ละคนต้องเรียกใช้ suggest เพียงครั้งเดียวแบบพร้อมกันหรือแบบไม่พร้อมกัน หากผู้ฟังเรียกใช้ suggest แบบไม่พร้อมกัน ผู้ฟังจะต้องส่งคืน true หากผู้ฟังไม่เรียกใช้ suggest แบบพร้อมกันหรือไม่ได้ส่งคืน true ระบบจะเรียกใช้ suggest โดยอัตโนมัติ DownloadItem จะไม่เสร็จสมบูรณ์จนกว่าผู้ฟังทุกคนจะโทรเข้ามาsuggest ผู้ฟังอาจเรียกใช้ suggest โดยไม่มีอาร์กิวเมนต์เพื่อให้การดาวน์โหลดใช้ downloadItem.filename เป็นชื่อไฟล์ หรือส่งออบเจ็กต์ suggestion ไปยัง suggest เพื่อลบล้างชื่อไฟล์เป้าหมาย หากส่วนขยายมากกว่า 1 รายการลบล้างชื่อไฟล์ ส่วนขยายสุดท้ายที่ติดตั้งซึ่งมี Listener ส่งออบเจ็กต์ suggestion ไปยัง suggest จะเป็นส่วนขยายที่ชนะ ผู้ใช้ไม่ควรติดตั้งส่วนขยายที่อาจขัดแย้งกันเพื่อไม่ให้เกิดความสับสนเกี่ยวกับส่วนขยายที่จะชนะ หาก download เป็นผู้เริ่มการดาวน์โหลดและทราบชื่อไฟล์เป้าหมายก่อนที่จะกำหนดประเภท MIME และชื่อไฟล์ชั่วคราว ให้ส่ง filename ไปยัง download แทน

พารามิเตอร์

  • callback

    ฟังก์ชัน

    พารามิเตอร์ callback มีลักษณะดังนี้

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

    • downloadItem
    • แนะนำ

      ฟังก์ชัน

      พารามิเตอร์ suggest มีลักษณะดังนี้

      (suggestion?: FilenameSuggestion) => void

onErased

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

ทริกเกอร์ด้วย downloadId เมื่อลบการดาวน์โหลดออกจากประวัติ

พารามิเตอร์

  • callback

    ฟังก์ชัน

    พารามิเตอร์ callback มีลักษณะดังนี้

    (downloadId: number) => void

    • downloadId

      ตัวเลข