Add optional full cookie response
All checks were successful
CI / release (push) Successful in 1m38s

This commit is contained in:
estebanthi
2026-02-04 10:01:50 +01:00
parent 3c73bccb81
commit 24b0ddf666
3 changed files with 33 additions and 6 deletions

View File

@@ -1,8 +1,10 @@
async function getPageHtml(page, url) {
async function ensurePageLoaded(page, url) {
try {
await page.goto(url, { waitUntil: "domcontentloaded", timeout: 10000 })
} catch (_) {}
}
async function getPageHtml(page) {
try {
return await page.content()
} catch (_) {
@@ -10,6 +12,14 @@ async function getPageHtml(page, url) {
}
}
async function getPageCookies(page, url) {
try {
return await page.cookies(url)
} catch (_) {
return null
}
}
async function cloudflare(data, page) {
return new Promise(async (resolve, reject) => {
if (!data.domain) return reject(new Error("Missing domain parameter"))
@@ -28,6 +38,7 @@ async function cloudflare(data, page) {
elapsed_time: elapsedTime,
}
if (data.include_html) response.html = null
if (data.include_cookies) response.cookies = null
resolve(response)
}
}, 20000)
@@ -72,8 +83,16 @@ async function cloudflare(data, page) {
elapsed_time: elapsedTime,
}
if (data.include_html || data.include_cookies) {
await ensurePageLoaded(page, data.domain)
}
if (data.include_html) {
response.html = await getPageHtml(page, data.domain)
response.html = await getPageHtml(page)
}
if (data.include_cookies) {
response.cookies = await getPageCookies(page, data.domain)
}
resolve(response)