Lección 5

Flujo de depuración de entidades HTML

Comprobaciones paso a paso para logs, exportaciones y cadenas mixtas de entidades.

Cuando la salida de entidades se ve mal, trabaja desde los bytes almacenados hacia afuera — no desde lo que el navegador muestre casualmente.

Paso 1: Identifica la capa fuente

Pregunta:

  • ¿Este campo está almacenado escapado, renderizado escapado o ambos?
  • ¿Un CMS, API o plantilla tocó la cadena por última vez?
  • ¿El bug está en una fila o en cada fila de una exportación?

Paso 2: Decodifica para inspeccionar caracteres

Pega la cadena en un decodificador. Comprueba:

  • ¿Las secuencias & se colapsan a un solo &?
  • ¿Hay entidades con nombre y numéricas mezcladas en un valor?
  • ¿La ida y vuelta codificar → decodificar coincide con el texto original?

Paso 3: Vigila espacios en blanco invisibles

Compara espacios normales, tabulaciones y  . Una vista previa que marque nbsp como · y tabulaciones como ahorra horas depurando CMS.

Paso 4: Procesa exportaciones problemáticas por lotes

Para volcados CSV o logs, procesa línea por línea. Las entidades inválidas deben reportar el número de línea y el token exacto (por ejemplo &bad; o &#xZZ;).

Paso 5: Corrige en el límite correcto

  • Si está doble codificado: elimina un paso de escape o decodifica antes de la capa de plantilla
  • Si está infraescapado: escapa en la salida, no en cada paso intermedio de almacenamiento
  • Si el estilo de entidad es incorrecto: alinea la configuración del codificador con el consumidor downstream

Paso 6: Verifica en contexto

Tras corregir, ve el HTML o email final en el entorno objetivo. Las devtools del navegador muestran texto DOM parseado, que puede diferir de la cadena de entidad cruda en tu base de datos.

Volver al resumen del curso