คำอธิบาย
ใช้ chrome.downloads API เพื่อเริ่มต้น ตรวจสอบ จัดการ และค้นหาการดาวน์โหลดแบบเป็นโปรแกรม
สิทธิ์
downloadsคุณต้องประกาศสิทธิ์ "downloads" ในไฟล์ Manifest ของส่วนขยายเพื่อใช้ API นี้
{
"name": "My extension",
...
"permissions": [
"downloads"
],
}
ตัวอย่าง
คุณดูตัวอย่างการใช้ chrome.downloads API แบบง่ายได้ในไดเรกทอรี examples/api/downloads
ดูตัวอย่างอื่นๆ และความช่วยเหลือในการดูซอร์สโค้ดได้ที่ตัวอย่าง
ประเภท
BooleanDelta
พร็อพเพอร์ตี้
-
current
บูลีน ไม่บังคับ
-
ก่อนหน้า
บูลีน ไม่บังคับ
DangerType
ค่าแจกแจง
"file"
ชื่อไฟล์ที่ดาวน์โหลดน่าสงสัย
"url"
URL ของการดาวน์โหลดเป็นที่ทราบกันว่ามีเจตนามุ่งร้าย
"เนื้อหา"
ระบบทราบว่าไฟล์ที่ดาวน์โหลดเป็นไฟล์ที่เป็นอันตราย
"ไม่พบบ่อย"
URL ของการดาวน์โหลดไม่ได้มีการดาวน์โหลดกันโดยทั่วไปและอาจเป็นอันตราย
"โฮสต์"
การดาวน์โหลดมาจากโฮสต์ที่ทราบว่าเผยแพร่ไบนารีที่เป็นอันตรายและมีแนวโน้มที่จะเป็นอันตราย
"ไม่พึงประสงค์"
การดาวน์โหลดอาจไม่พึงประสงค์หรือไม่ปลอดภัย เช่น อาจทำการเปลี่ยนแปลงการตั้งค่าเบราว์เซอร์หรือคอมพิวเตอร์
"ปลอดภัย"
การดาวน์โหลดไม่มีอันตรายที่ทราบต่อคอมพิวเตอร์ของผู้ใช้
"ยอมรับ"
ผู้ใช้ยอมรับการดาวน์โหลดที่เป็นอันตราย
"allowlistedByPolicy"
ค่าที่เกี่ยวข้องกับองค์กร
"asyncScanning"
"asyncLocalPasswordScanning"
"passwordProtected"
"blockedTooLarge"
"sensitiveContentWarning"
"sensitiveContentBlock"
"deepScannedFailed"
"deepScannedSafe"
"deepScannedOpenedDangerous"
"promptForScanning"
"promptForLocalPasswordScanning"
"accountCompromise"
"blockedScanFailed"
"forceSaveToGdrive"
สำหรับใช้โดยส่วนขยาย Secure Enterprise Browser เมื่อจำเป็น Chrome จะบล็อกการดาวน์โหลดลงดิสก์และดาวน์โหลดไฟล์ไปยัง Google ไดรฟ์โดยตรง
"forceSaveToOnedrive"
สำหรับใช้โดยส่วนขยาย Secure Enterprise Browser เมื่อจำเป็น Chrome จะบล็อกการดาวน์โหลดลงดิสก์และดาวน์โหลดไฟล์ไปยัง OneDrive โดยตรง
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ที่สิ้นสุดก่อนเวลาที่ระบุเป็นมิลลิวินาทีในรูปแบบ 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จะถูกละเว้นหากมี ListeneronDeterminingFilenameที่ลงทะเบียนโดยส่วนขยายใดๆ
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
พร็อพเพอร์ตี้
-
เปิดใช้อยู่
บูลีน
เปิดหรือปิดใช้ UI การดาวน์โหลด
เมธอด
acceptDanger()
chrome.downloads.acceptDanger(
downloadId: number,
): Promise<void>
แจ้งให้ผู้ใช้ยอมรับการดาวน์โหลดที่เป็นอันตราย เรียกใช้ได้จากบริบทที่มองเห็นได้เท่านั้น (แท็บ หน้าต่าง หรือป๊อปอัปการดำเนินการในหน้า/เบราว์เซอร์) ไม่ยอมรับการดาวน์โหลดที่เป็นอันตรายโดยอัตโนมัติ หากยอมรับการดาวน์โหลด ระบบจะทริกเกอร์เหตุการณ์ onChanged มิเช่นนั้นจะไม่มีการดำเนินการใดๆ เมื่อดึงข้อมูลทั้งหมดลงในไฟล์ชั่วคราวแล้ว และการดาวน์โหลดไม่เป็นอันตรายหรือยอมรับอันตรายแล้ว ระบบจะเปลี่ยนชื่อไฟล์ชั่วคราวเป็นชื่อไฟล์เป้าหมาย state จะเปลี่ยนเป็น "เสร็จสมบูรณ์" และonChanged จะทริกเกอร์
พารามิเตอร์
-
downloadId
ตัวเลข
ตัวระบุสำหรับ
DownloadItem
การคืนสินค้า
-
Promise<void>
Chrome 96 ขึ้นไปแสดงผล Promise ซึ่งจะทำงานเมื่อกล่องโต้ตอบข้อความแจ้งอันตรายปิดลง
cancel()
chrome.downloads.cancel(
downloadId: number,
): Promise<void>
ยกเลิกการดาวน์โหลด เมื่อเรียกใช้ callback ระบบจะยกเลิก ดาวน์โหลดเสร็จสมบูรณ์ ขัดจังหวะ หรือไม่มีการดาวน์โหลดอีกต่อไป
พารามิเตอร์
-
downloadId
ตัวเลข
รหัสของการดาวน์โหลดที่จะยกเลิก
การคืนสินค้า
-
Promise<void>
Chrome 96 ขึ้นไปแสดงผล Promise ซึ่งจะได้รับการแก้ไขเมื่อคำขอยกเลิกเสร็จสมบูรณ์
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 ขึ้นไปแสดงผล Promise ซึ่งจะได้รับการแก้ไขด้วยรหัสของ
DownloadItemใหม่
erase()
chrome.downloads.erase(
query: DownloadQuery,
): Promise<number[]>
ลบDownloadItem ที่ตรงกันออกจากประวัติโดยไม่ต้องลบไฟล์ที่ดาวน์โหลด เหตุการณ์ onErased จะทํางานสําหรับ DownloadItem แต่ละรายการที่ตรงกับ query จากนั้นระบบจะเรียกใช้ callback
พารามิเตอร์
-
query
การคืนสินค้า
-
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 ขึ้นไปแสดงผล Promise ซึ่งจะแสดงผล URL ไปยังรูปภาพที่แสดงการดาวน์โหลด
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 ขึ้นไปแสดงผล Promise ซึ่งจะได้รับการแก้ไขเมื่อคำขอหยุดชั่วคราวเสร็จสมบูรณ์
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 ขึ้นไปแสดงผล Promise ซึ่งจะได้รับการแก้ไขเมื่อคำขอเล่นต่อเสร็จสมบูรณ์
search()
chrome.downloads.search(
query: DownloadQuery,
): Promise<DownloadItem[]>
ค้นหา DownloadItem ตั้งค่า query เป็นออบเจ็กต์ที่ว่างเปล่าเพื่อรับ DownloadItem ทั้งหมด หากต้องการรับ DownloadItem ที่เฉพาะเจาะจง ให้ตั้งค่าเฉพาะฟิลด์ id หากต้องการเลื่อนดูรายการจำนวนมาก ให้ตั้งค่า orderBy: ['-startTime'] ตั้งค่า limit เป็นจำนวนรายการต่อหน้า และตั้งค่า startedAfter เป็น startTime ของรายการสุดท้ายจากหน้าสุดท้าย
พารามิเตอร์
-
query
การคืนสินค้า
-
Promise<DownloadItem[]>
Chrome 96 ขึ้นไป
setShelfEnabled()
chrome.downloads.setShelfEnabled(
enabled: boolean,
): void
โปรดใช้ setUiOptions แทน
เปิดหรือปิดใช้ชั้นวางสีเทาที่ด้านล่างของทุกหน้าต่างที่เชื่อมโยงกับโปรไฟล์เบราว์เซอร์ปัจจุบัน ระบบจะปิดใช้ชั้นวางตราบใดที่ส่วนขยายอย่างน้อย 1 รายการปิดใช้ชั้นวาง การเปิดใช้ชั้นวางในขณะที่ส่วนขยายอื่นอย่างน้อย 1 รายการปิดใช้ชั้นวางดังกล่าวจะทำให้เกิดข้อผิดพลาดผ่าน runtime.lastError ต้องมีสิทธิ์ "downloads.shelf" นอกเหนือจากสิทธิ์ "downloads"
พารามิเตอร์
-
เปิดใช้อยู่
บูลีน
setUiOptions()
chrome.downloads.setUiOptions(
options: UiOptions,
): Promise<void>
เปลี่ยน UI การดาวน์โหลดของทุกหน้าต่างที่เชื่อมโยงกับโปรไฟล์เบราว์เซอร์ปัจจุบัน ตราบใดที่ส่วนขยายอย่างน้อย 1 รายการตั้งค่า UiOptions.enabled เป็น false ระบบจะซ่อน UI การดาวน์โหลด การตั้งค่า UiOptions.enabled เป็นจริงในขณะที่ส่วนขยายอื่นอย่างน้อย 1 รายการปิดใช้ไว้จะทำให้เกิดข้อผิดพลาดผ่าน runtime.lastError ต้องมีสิทธิ์ "downloads.ui" นอกเหนือจากสิทธิ์ "downloads"
พารามิเตอร์
-
ตัวเลือก
แคปซูลการเปลี่ยนแปลง UI การดาวน์โหลด
การคืนสินค้า
-
Promise<void>
แสดงผล Promise ซึ่งจะได้รับการแก้ไขเมื่อการอัปเดต UI เสร็จสมบูรณ์
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
-
downloadDelta
-
onCreated
chrome.downloads.onCreated.addListener(
callback: function,
)
เหตุการณ์นี้จะทริกเกอร์ด้วยออบเจ็กต์ DownloadItem เมื่อการดาวน์โหลดเริ่มต้น
พารามิเตอร์
-
callback
ฟังก์ชัน
พารามิเตอร์
callbackมีลักษณะดังนี้(downloadItem: DownloadItem) => void
-
downloadItem
-
onDeterminingFilename
chrome.downloads.onDeterminingFilename.addListener(
callback: function,
)
ในระหว่างกระบวนการกำหนดชื่อไฟล์ ส่วนขยายจะมีโอกาสที่จะลบล้างDownloadItem.filenameเป้าหมาย ส่วนขยายแต่ละรายการจะลงทะเบียนผู้ฟังสำหรับเหตุการณ์นี้ได้ไม่เกิน 1 ราย ผู้ฟังแต่ละคนต้องเรียกใช้ suggest เพียงครั้งเดียวแบบพร้อมกันหรือแบบไม่พร้อมกัน หาก Listener เรียกใช้ suggest แบบอะซิงโครนัส Listener จะต้องแสดงผล 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
-
คำแนะนำ
FilenameSuggestion ไม่บังคับ
-
-
onErased
chrome.downloads.onErased.addListener(
callback: function,
)
เริ่มทำงานด้วย downloadId เมื่อระบบลบการดาวน์โหลดออกจากประวัติ
พารามิเตอร์
-
callback
ฟังก์ชัน
พารามิเตอร์
callbackมีลักษณะดังนี้(downloadId: number) => void
-
downloadId
ตัวเลข
-