¿Qué narices es esto?
El código 308 Permanent Redirect es el "se mudó para siempre, pero síguelo haciendo igual" de HTTP. Es la versión moderna y precisa del 301, diseñada para mantener el método HTTP original en redirecciones permanentes. Como el servicio postal que no solo te dice "se mudó a esta dirección", sino también "y sigue enviando cartas del mismo tipo que mandabas antes".
La diferencia clave es que el 308 preserva el método HTTP original para
siempre. Si tu API se muda permanentemente de /api/v1/users
a
/api/v2/users
, un POST seguirá siendo POST, un PUT seguirá siendo PUT. El 301
clásico era ambiguo y muchos navegadores convertían automáticamente POST a GET. El
308 dice "usa la nueva dirección para siempre, pero haz exactamente lo mismo que
hacías".
El 308 aparece típicamente en:
- APIs que cambian de versión permanentemente
- Migración de endpoints RESTful
- Cambios de dominio manteniendo funcionalidad
- Reestructuración de rutas en aplicaciones
- Consolidación de servicios web
🎯 Dato curioso
El 308 es relativamente nuevo (RFC 7538, 2015) comparado con otros códigos. Se creó específicamente para solucionar las inconsistencias del 301 con métodos no-GET. Es HTTP aprendiendo de sus errores históricos.
La belleza del 308 es su claridad semántica. No hay ambigüedad: el recurso se movió permanentemente Y el método HTTP se mantiene. Los navegadores y herramientas pueden actualizar sus marcadores/cache con confianza. Es la diferencia entre "mudanza con instrucciones vagas" y "mudanza con manual de usuario incluido". Perfecto para APIs modernas donde cada método HTTP tiene significado específico.