Cómo usar: Generador y Probador CORS
- En Generar cabeceras, indica los orígenes que pueden llamar a tu API (o permite cualquiera), marca los métodos e introduce las cabeceras de petición que envía tu front end, normalmente
Content-TypeyAuthorization. - Marca Permitir credenciales solo si el navegador debe enviar cookies o una cabecera Authorization con
credentials: 'include'. - Elige tu plataforma y copia el código: Express, Nginx, Apache, Netlify, Vercel, Next.js, Workers o PHP.
- Despliega y cambia a Probar una URL: introduce la URL de la API y el origen de la página para ver si el preflight y la petición real pasarían.
Por qué los navegadores bloquean las peticiones
Una página en https://app.example.com solo puede leer una respuesta de https://api.example.com si la API lo permite con cabeceras CORS. Para cualquier cosa más allá de un GET simple o un POST de formulario (cuerpos JSON, cabeceras Authorization, PUT o DELETE), el navegador envía primero un preflight: una petición OPTIONS que pregunta «¿puede este origen usar este método y estas cabeceras?». Si la respuesta falta o es incorrecta, verás “has been blocked by CORS policy” y tu código nunca recibirá la respuesta.
| Cabecera | Qué debe contener |
|---|---|
Access-Control-Allow-Origin | El origen que hace la llamada exactamente, o * (no permitido con credenciales) |
Access-Control-Allow-Methods | El método de la petición real (solo en el preflight) |
Access-Control-Allow-Headers | Cada cabecera de petición no estándar, como Authorization o Content-Type: application/json |
Access-Control-Allow-Credentials | true cuando se envían cookies o credenciales |
Access-Control-Max-Age | Cuánto tiempo puede guardar el navegador la respuesta del preflight en caché |
Vary: Origin | Necesaria cuando el origen permitido cambia según la petición, para que las cachés no sirvan la respuesta de un origen a otro |
Cómo funciona el probador
Nuestro servidor envía la petición con una cabecera Origin y, si el navegador la necesitaría, un preflight OPTIONS con Access-Control-Request-Method y -Headers, igual que Chrome o Firefox. Después comprueba la respuesta según las reglas CORS que aplican los navegadores. Los servidores que solo permiten ciertas direcciones IP o que necesitan cookies pueden responder de forma distinta a los usuarios reales. Relacionado: HTTP Header Checker, API Tester, Security Headers Checker.
También se busca como: generador de cabeceras cors, probador cors, comprobar cors online, bloqueado por política cors, access-control-allow-origin, test preflight cors, configurar cors express, cors nginx.
Herramientas que combinan con: Generador y Probador CORS
- Generador CSP — Elige lo que carga tu sitio (scripts, estilos, imágenes, fuentes, analítica, embeds) y obtén una Content-Security-Policy que permite exactamente eso, con avisos sobre configuraciones arriesgadas.
- cURL a código — Pega un comando curl, ya sea de la documentación de una API o de «Copiar como cURL» en las DevTools de tu navegador, y obtén código listo para ejecutar en seis lenguajes, con las cabeceras, el cuerpo y la autenticación incluidos.
- Generador de configuraciones de Nginx — Elige qué quieres que haga Nginx —servir una página web estática o una SPA, actuar como proxy para una aplicación de Node/Python o ejecutar PHP— y marca las opciones adicionales.
- Analizador de cabeceras de email — Pega las cabeceras sin procesar de un email para ver todo su recorrido: cada salto entre servidores con el tiempo que tardó, los resultados de SPF, DKIM y DMARC, la IP de origen y señales de alerta como un Reply-To o un Return-Path que no coinciden.