การตอบกลับที่รวดเร็วจาก curl หรือ Axios มักเป็นทรัพยากรเดียว Puppeteer ยังดึงสคริปต์ รูปภาพ เฟรม และ API จากหลายโฮสต์ แล้วรอหมุดหมายของหน้าที่เกิดภายหลังได้

เนื่องจากพร็อกซีถูกกำหนดค่าไว้บนหน้าที่มีอยู่แล้ว ให้สังเกตความล้มเหลวแต่ละรายการระหว่างการนำทาง:

page.on("requestfailed", request => {
  console.log(request.url(), request.failure()?.errorText);
});

await page.goto(targetUrl, {
  waitUntil: "domcontentloaded",
  timeout: 30000,
});

รันสิ่งนี้ในเวิร์กโฟลว์ async ด้วย targetUrl จริง ตัวอย่างรอ DOMContentLoaded ซึ่งเกิดก่อนการเสร็จสิ้นของรูปภาพที่จำเป็นทุกภาพหรือการตอบกลับของแอปพลิเคชันที่เกิดภายหลัง เปรียบเทียบหมุดหมายนั้นกับหมุดหมายที่การนำทางครั้งเดิมรออยู่: เอกสารหลัก DOM load หรือความเงียบของเครือข่ายเป็นผลลัพธ์ที่แตกต่างกัน

การตอบกลับ 403 หรือ 500 ไม่ใช่เหตุการณ์ requestfailed อ่านสถานะผ่าน HTTPResponse ด้วย

ใช้ข้อสังเกตเพื่อระบุทรัพยากรที่ช้าหรือถูกปฏิเสธ การยืนยันตัวตนซ้ำ หรือเงื่อนไขการรอที่เกิดภายหลัง การหมดเวลาที่นานขึ้นเพียงยืดการรอ ไม่ได้ลดงานของเบราว์เซอร์และไม่ได้พิสูจน์ว่าทุกการเชื่อมต่อทรัพยากรได้รับการยอมรับ

บทความที่เกี่ยวข้อง