คำอธิบาย
ใช้ chrome.pageCapture
API เพื่อบันทึกแท็บเป็น MHTML
MHTML คือรูปแบบมาตรฐานที่เบราว์เซอร์ส่วนใหญ่รองรับ สรุปรวมไว้ในไฟล์เดียวของหน้าเว็บ 1 หน้า และทรัพยากรทั้งหมด (ไฟล์ CSS, รูปภาพ..)
โปรดทราบว่า ด้วยเหตุผลด้านความปลอดภัย ไฟล์ MHTML จะสามารถโหลดได้จากระบบไฟล์เท่านั้น และ จะโหลดในเฟรมหลักเท่านั้น
สิทธิ์
pageCapture
คุณต้องประกาศ "pageCapture" สิทธิ์ในไฟล์ Manifest ของส่วนขยายเพื่อใช้ PageCapture API เช่น
{
"name": "My extension",
...
"permissions": [
"pageCapture"
],
...
}
เมธอด
saveAsMHTML()
chrome.pageCapture.saveAsMHTML(
details: object,
callback?: function,
)
บันทึกเนื้อหาในแท็บที่มีรหัสที่ระบุเป็น MHTML
พารามิเตอร์
-
รายละเอียด
ออบเจ็กต์
-
tabId
ตัวเลข
รหัสของแท็บที่จะบันทึกเป็น MHTML
-
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(mhtmlData?: ArrayBuffer) => void
-
mhtmlData
ArrayBuffer ไม่บังคับ
ข้อมูล MHTML เป็น Blob
-
การคืนสินค้า
-
Promise<ArrayBuffer | ไม่ระบุ>
Chrome 116 ขึ้นไปรองรับคำสัญญาในไฟล์ Manifest V3 ขึ้นไป แต่จะมี Callback สำหรับ ความเข้ากันได้แบบย้อนหลัง คุณไม่สามารถใช้ทั้ง 2 อย่างในการเรียกใช้ฟังก์ชันเดียวกันได้ จะมีการแก้ไขด้วยประเภทเดียวกันที่ส่งไปยัง Callback