Desarrollador Frontend: pregunta de entrevista
¿Qué es CORS y cómo lo depuras?
CORS es una política de seguridad del navegador: el servidor debe permitir explícitamente otro origen mediante cabeceras. No se resuelve en frontend; revisa origen, preflight, modo de credenciales y cabeceras del servidor.
Respuesta directa
Qué debe cubrir una buena respuesta
Cómo funciona
El navegador aplica la política de mismo origen: un script puede enviar una solicitud a otro origen, pero solo puede leer la respuesta si ese origen lo autoriza con Access-Control-Allow-Origin y cabeceras relacionadas. Las solicitudes con cabeceras personalizadas, métodos no simples o ciertos content types disparan primero un preflight OPTIONS. Depurar significa leer el error exacto en consola y luego revisar la respuesta del preflight, el origen devuelto, el modo de credenciales y si un proxy o CDN elimina las cabeceras.
Ejemplo
Una solicitud con credenciales no puede usar Access-Control-Allow-Origin: *; el servidor debe devolver el origen permitido exacto y permitir credenciales. Una trampa habitual es una API que solo pone las cabeceras en respuestas 200: un 401 o un 500 llegan sin ellas y el navegador muestra un error CORS que oculta el estado real.
Errores frecuentes
- Intentar arreglar CORS con una cabecera en la solicitud en lugar de en la respuesta.
- Reflejar cualquier valor de Origin con credenciales activadas, lo que anula la protección por completo.
- Olvidar que las respuestas de error y las redirecciones necesitan las mismas cabeceras que las exitosas.
Una estructura útil para responder
Responde desde tu propia experiencia.
No memorices un guion: usa solo ejemplos que puedas explicar con honestidad en preguntas posteriores.
Abre el espacio de trabajo de escritorio y ensaya una respuesta clara con tus propias palabras.