Dijagnostikujte Puppeteer proxy tajmaute po zahtjevu i prekretnici stranice
Koristite requestfailed za mrežne greške i HTTPResponse status za odgovore servera 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.
Pošto je proxy već konfigurisan na postojećoj stranici, posmatrajte pojedinačne neuspjehe tokom navigacije:
page.on("requestfailed", request => {
console.log(request.url(), request.failure()?.errorText);
});
await page.goto(targetUrl, {
waitUntil: "domcontentloaded",
timeout: 30000,
});Pokrenite ovo u asinhronom toku rada sa stvarnim targetUrl. Primjer čeka DOMContentLoaded, što je ranije od završetka svake potrebne slike ili kasnijeg odgovora aplikacije. Uporedite tu prekretnicu s onom koju je čekala originalna 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 zapažanja da prepoznate spor ili odbijen resurs, ponovljenu autentifikaciju ili kasniji uslov čekanja. Duži tajmaut samo produžava čekanje; ne smanjuje rad preglednika niti dokazuje da je svaka veza s resursom prihvaćena.