Dijagnosticirajte Puppeteer proxy tajmaute po zahtjevu i prekretnici stranice
Koristite requestfailed za mrežne pogreške i HTTPResponse status za odgovore poslužitelja prije nego što okrivite proxy za sporo učitavanje cijele stranice.
Brz odgovor curl ili Axios obično je jedan resurs. Puppeteer može dohvatiti i skripte, slike, okvire i API-je s više hostova te čekati kasniju prekretnicu stranice.
Budući da je proxy već konfiguriran na postojećoj stranici, promatrajte pojedinačne neuspjehe tijekom navigacije:
page.on("requestfailed", request => {
console.log(request.url(), request.failure()?.errorText);
});
await page.goto(targetUrl, {
waitUntil: "domcontentloaded",
timeout: 30000,
});Pokrenite ovo u asinkronom tijeku rada sa stvarnim targetUrl. Primjer čeka DOMContentLoaded, što je ranije od dovršetka svake potrebne slike ili kasnijeg odgovora aplikacije. Usporedite tu prekretnicu s onom koju je čekala izvorna navigacija: glavni dokument, DOM, load ili mrežno mirovanje različiti su ishodi.
Odgovor 403 ili 500 nije događaj requestfailed. Čitajte status i kroz HTTPResponse.
Iskoristite opažanja da prepoznate spor ili odbijen resurs, ponovljenu autentifikaciju ili kasniji uvjet čekanja. Dulji tajmaut samo produljuje čekanje; ne smanjuje rad preglednika niti dokazuje da je svaka veza s resursom prihvaćena.