Volver al Blog
Blog

¿Qué es CORS y qué deberías tener en cuenta como desarrollador?

Brayan Developer
2 min de lectura
¿Qué es CORS y qué deberías tener en cuenta como desarrollador?
¿Qué es CORS y qué deberías tener en cuenta como desarrollador? CORS (Cross-Origin Resource Sharing) es un mecanismo de seguridad implementado en los navegadores que controla cómo las páginas web pueden hacer solicitudes a un dominio distinto al de origen. Es fundamental comprenderlo para evitar errores como “No ‘Access-Control-Allow-Origin’ header present” al trabajar con APIs [...]

¿Qué es CORS y qué deberías tener en cuenta como desarrollador?#

CORS (Cross-Origin Resource Sharing) es un mecanismo de seguridad implementado en los navegadores que controla cómo las páginas web pueden hacer solicitudes a un dominio distinto al de origen. Es fundamental comprenderlo para evitar errores como “No ‘Access-Control-Allow-Origin’ header present” al trabajar con APIs o sistemas distribuidos.

¿Cómo funciona CORS?#

Cuando un cliente (normalmente un navegador) intenta acceder a recursos alojados en otro dominio, el servidor de destino debe incluir cabeceras CORS específicas para permitir dicha solicitud. Por ejemplo:


Access-Control-Allow-Origin: https://midominio.com

Si el servidor no responde con esa cabecera, el navegador bloquea el acceso por razones de seguridad.

¿Qué debes tener en cuenta al implementar CORS?#

  • Controlar los orígenes permitidos: Nunca uses * en producción. Define explícitamente qué dominios pueden acceder.

  • Verbos HTTP: Métodos como GET, POST, PUT y DELETE pueden requerir configuraciones adicionales (preflight request).

  • Cabeceras personalizadas: Si usas cabeceras como Authorization, asegúrate de permitirlas con Access-Control-Allow-Headers.

  • Credenciales: Para permitir cookies o tokens en las solicitudes, usa:

    
    Access-Control-Allow-Credentials: true
    
  • Preflight (OPTIONS): Algunas solicitudes envían una verificación previa (preflight request) con el método OPTIONS. Asegúrate de que tu backend lo soporte.

Buenas prácticas al manejar CORS#

  • Configura los headers desde el backend (PHP, Node.js, etc.) de forma dinámica o por lista blanca.
  • Evita exponer tu API a todos los orígenes en producción.
  • Utiliza herramientas como Postman o curl para probar CORS sin las restricciones del navegador.

Conclusión#

Entender qué es CORS y cómo gestionarlo correctamente es esencial para todo desarrollador web. Configurar correctamente las cabeceras de CORS permite que tus aplicaciones se comuniquen de forma segura entre dominios, evitando errores y vulnerabilidades innecesarias.

¿Tienes una API que será consumida por varios dominios? ¡Implementa CORS correctamente desde el inicio!

Compartir:XLinkedInWhatsApp

¿Te gustaría profundizar en estos temas?

Aprende sobre desarrollo de software, apps a medida, automatizaciones con N8N, Next.js y Cloud con casos reales.

Hablemos