Conjuntos de caracteres UTF-8
Base64 codifica bytes, no caracteres. UTF-8 convierte primero los caracteres en uno o más bytes; caracteres chinos y emoji usan varios. Un desajuste produce mojibake o errores de decodificación.
Elegir un charset explícito
Documenta UTF-8 en cada frontera de navegador, API y base de datos. Decodifica Base64 a bytes primero y luego interpreta esos bytes como UTF-8.
Detectar un desajuste
Si ASCII funciona pero el texto acentuado falla, revisa charset declarado, conversión de saltos de línea y si el productor usó Base64 estándar o Base64URL. Compara longitudes en bytes.
Comprobación práctica
Codifica café / 世界 / 🚀 con el codificador de texto, luego decodifica y compara los caracteres originales.