From a79a5f2b4208781d9077a05450abf384c96506bb Mon Sep 17 00:00:00 2001 From: ngosang Date: Wed, 20 Oct 2021 18:06:15 +0200 Subject: [PATCH] Avoid reloading the page in case of error --- src/services/solver.ts | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/services/solver.ts b/src/services/solver.ts index 2e2a0df..d0638fe 100644 --- a/src/services/solver.ts +++ b/src/services/solver.ts @@ -82,15 +82,17 @@ async function resolveChallenge(params: V1Request, session: SessionsCacheItem): // detect protection services and solve challenges try { response = await cloudflareProvider(params.url, page, response); + + // is response is ok + // reload the page to be sure we get the real page + log.debug("Reloading the page") + response = await gotoPage(params, page); + } catch (e) { status = "error"; message = "Cloudflare " + e.toString(); } - // reload the page to be sure we get the real page - log.debug("Reloading the page") - response = await gotoPage(params, page); - const payload: ChallengeResolutionT = { status, message, @@ -131,7 +133,7 @@ async function gotoPage(params: V1Request, page: Page): Promise { } else { // post hack // first request a page without cloudflare - response = await page.goto("https://www.google.com", {waitUntil: 'domcontentloaded'}); + response = await page.goto(params.url, {waitUntil: 'domcontentloaded'}); await page.setContent( `