คำอธิบาย
ใช้ chrome.devtools.network API เพื่อดึงข้อมูลเกี่ยวกับคำขอเครือข่ายที่แสดงโดยเครื่องมือสำหรับนักพัฒนาเว็บในแผงเครือข่าย
ข้อมูลคำขอเครือข่ายจะแสดงในรูปแบบ HTTP Archive (HAR) คำอธิบายของ HAR อยู่นอกขอบเขตของเอกสารนี้ โปรดดูข้อกำหนด HAR v1.2
ในส่วนของ HAR เมธอด chrome.devtools.network.getHAR() จะแสดง HAR log ทั้งหมด ขณะที่
chrome.devtools.network.onRequestFinished เหตุการณ์จะแสดง HAR entry เป็นอาร์กิวเมนต์ไปยัง callback ของเหตุการณ์
โปรดทราบว่าระบบไม่ได้ระบุเนื้อหาคำขอเป็นส่วนหนึ่งของ HAR เพื่อประสิทธิภาพ คุณสามารถเรียกใช้เมธอด getContent() ของคำขอเพื่อดึงเนื้อหาได้
หากหน้าต่างเครื่องมือสำหรับนักพัฒนาเว็บเปิดขึ้นหลังจากโหลดหน้าเว็บแล้ว คำขอบางรายการอาจหายไปในอาร์เรย์ของรายการที่แสดงผลโดย getHAR() ให้โหลดหน้าเว็บใหม่เพื่อดูคำขอทั้งหมด โดยทั่วไป รายการคำขอที่แสดงผลโดย getHAR() ควรตรงกับรายการที่แสดงในแผงเครือข่าย
ดูข้อมูลเบื้องต้นเกี่ยวกับการใช้ API ของเครื่องมือสำหรับนักพัฒนาเว็บได้ที่สรุป API ของเครื่องมือสำหรับนักพัฒนาเว็บ
ไฟล์ Manifest
ตัวอย่าง
โค้ดต่อไปนี้จะบันทึก URL ของรูปภาพทั้งหมดที่มีขนาดใหญ่กว่า 40 KB ขณะโหลด
chrome.devtools.network.onRequestFinished.addListener(
function(request) {
if (request.response.bodySize > 40*1024) {
chrome.devtools.inspectedWindow.eval(
'console.log("Large image: " + unescape("' +
escape(request.request.url) + '"))');
}
}
);
หากต้องการลองใช้ API นี้ ให้ติดตั้งตัวอย่าง API ของเครื่องมือสำหรับนักพัฒนาเว็บจากที่เก็บ chrome-extension-samples
ประเภท
Request
แสดงคำขอเครือข่ายสำหรับทรัพยากรเอกสาร (สคริปต์ รูปภาพ และอื่นๆ) ดูข้อมูลอ้างอิงได้ที่ข้อกำหนด HAR
พร็อพเพอร์ตี้
-
getContent
void
แสดงเนื้อหาของเนื้อหาการตอบกลับ
ฟังก์ชัน
getContentมีลักษณะดังนี้() => {...}-
returns
Promise<object>
รอดำเนินการฟังก์ชันที่รับเนื้อหาการตอบกลับเมื่อคำขอเสร็จสมบูรณ์
-
เมธอด
getHAR()
chrome.devtools.network.getHAR(): Promise<object>
แสดง HAR log ที่มีคำขอเครือข่ายทั้งหมดที่ทราบ
Returns
-
Promise<object>
รอดำเนินการฟังก์ชันที่รับ HAR log เมื่อคำขอเสร็จสมบูรณ์
กิจกรรม
onNavigated
chrome.devtools.network.onNavigated.addListener(
callback: function,
)
เริ่มทำงานเมื่อหน้าต่างที่ตรวจสอบไปยังหน้าใหม่
พารามิเตอร์
-
ฟังก์ชัน
พารามิเตอร์
callbackมีลักษณะดังนี้:(url: string) => void
-
สตริง
-
onRequestFinished
chrome.devtools.network.onRequestFinished.addListener(
callback: function,
)
เริ่มทำงานเมื่อคำขอเครือข่ายเสร็จสมบูรณ์และข้อมูลคำขอทั้งหมดพร้อมใช้งาน