Cómo solucionar el error \"Enable JavaScript and cookies to continue\"
Erick Eduardo RamosDEV Community
2 views
Cómo solucionar el error "Enable JavaScript and cookies to continue"
¿Por qué ocurre este error?
Este mensaje aparece cuando Cloudflare (o un proxy similar como Brotli/WAF) bloquea la solicitud porque detecta que el navegador no cumple con los requisitos mínimos de seguridad. Especialmente común en:
Solicitudes automatizadas (scraping, scripts, bots) sin headers o cookies válidas.
Navegadores con JavaScript deshabilitado (poco común en entornos reales, más frecuente en entornos headless mal configurados).
Sesiones sin cookies habilitadas o con políticas estrictas de privacidad (ej. modo incógnito con bloqueo agresivo).
Uso de librerías HTTP sin emular correctamente un cliente real (ej. requests en Python sin User-Agent, Accept-Language, etc.).
⚠️ No es un error de tu código front-end, sino una defensa activa del servidor contra tráfico no humano.
Solución definitiva (según tu entorno)
✅ Si usas un navegador headless (Puppeteer, Playwright, Selenium)
1. Habilita explícitamente JavaScript y cookies
// Ejemplo con Puppeteer (Node.js)
const browser = await puppeteer.launch({
headless: 'new',
args: ['--disable-features=IsolateOrigins,site-per-process']
});
const page = await browser.newPage();
await page.setJavaScriptEnabled(true);
await page.setCookie({
name: 'cf_clearance',
value: 'dummy-value', // O mejor: resuelve el challenge manualmente una vez y reutiliza el token
domain: '.tu-dominio.com'
});
// Simula un navegador real
await page.setUserAgent('Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36');
await page.setViewport({ width: 1920, height: 1080 });
2. Usa un resolver de challenges (recomendado)
npm install puppeteer-extra-plugin-stealth
const puppeteer = require('puppeteer-extra');
const StealthPlugin = require('puppeteer-extra-plugin-stealth');
puppeteer.use(StealthPlugin());
// ... luego lanza el navegador como antes
💡 Pro-tip: Cloudflare usa browser fingerprinting. Usa puppeteer-extra-plugin-recaptcha o playwright-extra con stealth para evitar detección.
✅ Si usas curl, requests (Python), o HTTP raw
1. Simula un navegador real con headers completos
import requests
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",
"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8",
"Accept-Language": "es-ES,es;q=0.9,en;q=0.8",
"Accept-Encoding": "gzip, deflate, br",
"Connection": "keep-alive",
"Upgrade-Insecure-Requests": "1",
"Sec-Fetch-Dest": "document",
"Sec-Fetch-Mode": "navigate",
"Sec-Fetch-Site": "none",
"Sec-Fetch-User": "?1",
"Cache-Control": "max-age=0",
}
session = requests.Session()
response = session.get("https://tu-sitio.com", headers=headers)
2. Resuelve el challenge manualmente (una sola vez) y reutiliza la cookie
Abre el sitio en tu navegador normal.
Espera a que cargue (puede tardar 5–10 segundos).
Copia la cookie cf_clearance (ver en DevTools > Application > Cookies).
Usa esa cookie en tus solicitudes posteriores:
session.cookies.set("cf_clearance", "tu-cookie-cf_clearance-aquí", domain=".tu-dominio.com")
🔑 Clave: cf_clearance es una cookie temporal que Cloudflare emite tras superar el challenge. Sin ella, todo request será bloqueado.
Verificación rápida (CLI)
curl -v https://tu-sitio.com 2>&1 | grep -i "set-cookie"
Si no ves cf_clearance=..., el challenge no se superó.
Pro-tip: Evita el problema desde el origen
Si controlas el servidor detrás de Cloudflare:
Usa Cloudflare "I'm Under Attack" mode OFF (solo para desarrollo).
Configura WAF Exclusions para IPs de prueba (IPs de CI/CD, bots internos).
Usa API Tokens o Basic Auth para endpoints que no deben pasar por el WAF.
Pero nunca deshabilites Cloudflare en producción — este error es una característica de seguridad, no un bug.
✅ Listo. Con esto el error desaparecerá de forma definitiva.
Originally published at nlocoding.com
38% of new APIs built in 2025 were designed, tested, or maintained by AI-enabled dev tools. Not by humans working solo. Not even close.
The API economy is moving. Fast. Two years ago, few teams trusted AI to write production code. In 2026, 61% of backend te
Originally published on tamiz.pro.
The Vanishing Act
AI agents vanish in production for three reasons: stateful sessions time out, dependencies bloat the runtime, and costs spiral silently. This guide fixes all three with minimal infra.
Prerequisites
Node.js 18+ or Python 3.
Vergessen Sie Hub-and-Spoke! Ihr klassisches VPN-Design ist ein Relikt aus einer Zeit, in der Bandbreite teuer und Ausfallsicherheit ein Luxus war. Heute ist ein zentraler VPN-Server, durch den der gesamte Traffic gequetscht wird, nichts weiter als ein selbstgebauter Flaschenhals und ein gigantische