Codificar y decodificar texto Base64
Convierta texto a Base64 y de vuelta sin adivinar nada: «Hello, 🌍!» se convierte en SGVsbG8sIPCfjI0h, emoji incluido, con el alfabeto estándar o el seguro para URL. Una entrada dañada se rechaza en vez de devolver texto ilegible. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Texto
- Hello, 🌍!
- Modo de cálculo
- Encode
- Resultado
- SGVsbG8sIPCfjI0h
Convierta texto a Base64 y recupérelo sin preguntarse qué alfabeto, relleno o regla de validación eligió silenciosamente otra herramienta. Este conversor determinista procesa Unicode como UTF-8, admite Base64 RFC 4648 estándar y su variante URL-safe, y rechaza entradas mal formadas en vez de devolver texto dañado. Cada respuesta correcta contiene una sola cadena de resultado, fácil de copiar, guardar, comparar o pasar al siguiente paso de su proceso.
Codifique texto UTF-8 en una representación Base64 portátil
El conversor representa primero la cadena como bytes UTF-8; así, letras acentuadas, emoji, escrituras no latinas, saltos de línea y signos se procesan de forma coherente. Después agrupa los bytes conforme a RFC 4648. La variante estándar emplea letras, dígitos, signo más y barra, con relleno canónico mediante signos igual.
Con URL-safe, esos dos símbolos se sustituyen por guion y guion bajo, y se omite el relleno. Base64 es codificación, no cifrado: cualquier persona que vea el valor puede invertirlo. El objeto devuelto contiene únicamente la cadena de resultado para mantener sencillo y determinista el procesamiento automatizado.
Decodifique con rigor y no acepte datos dañados
Elija el modo de decodificación cuando el texto ya esté en Base64 y quiera recuperar su contenido UTF-8. La variante seleccionada forma parte de la validación: el modo estándar acepta más y barra, mientras URL-safe acepta guion y guion bajo. Los caracteres del otro alfabeto no se corrigen silenciosamente.
También se comprueba que el relleno aparezca solo al final, que tenga como máximo dos signos, que concuerde con la longitud y que esta pueda representar bytes completos. Se verifican los bits finales sin usar y se rechazan espacios. Por último, los bytes deben constituir UTF-8 válido.
Un archivo binario puede ser Base64 válido pero no texto; en tal caso se devuelve un error de entrada en lugar de caracteres de sustitución. Estas comprobaciones hacen visible el fallo donde resulta más fácil diagnosticarlo.
Elija Base64 estándar o URL-safe según el sistema receptor
La variante correcta depende del sistema que consumirá el valor. Base64 estándar es habitual en campos documentales codificados y especificaciones que muestran más, barra e igual. URL-safe sirve para contextos donde esos símbolos tienen significado especial, como URL, nombres de archivo, cookies o componentes de tokens.
Al decodificar URL-safe se acepta relleno correcto u omitido si la longitud lo permite; al codificar se omite para obtener la forma compacta. En procesos fiables, guarde la variante junto con los datos o defínala en el protocolo. Ambas rutas usan la misma lógica pura y producen el mismo resultado.
Qué puede hacer con ella
Revise un valor de configuración codificado
Decodifique Base64 con validación estricta para que una entrada defectuosa falle claramente.
Cree componentes de token aptos para URL
Convierta texto UTF-8 con el alfabeto de guion y guion bajo y sin relleno.
Preguntas frecuentes
¿Base64 es cifrado?
No. Base64 solo representa bytes mediante caracteres imprimibles y no aporta confidencialidad ni autenticación.
¿Cómo se trata Unicode?
El texto se convierte a bytes UTF-8 antes de codificarlo y los bytes decodificados deben ser UTF-8 válido.
¿Qué cambia al activar URL-safe?
La codificación usa guion y guion bajo en vez de más y barra, y omite el relleno; la decodificación valida ese mismo alfabeto.
¿Qué entradas se rechazan al decodificar?
Se rechazan caracteres no válidos, espacios, longitudes imposibles, relleno incorrecto, bits finales distintos de cero y bytes que no formen UTF-8 válido.
¿Debo usar Base64 estándar o la variante segura para URL?
La que espere el sistema que va a recibir el valor. El estándar, con signos más, barras e iguales, es habitual en documentos e intercambio de datos; la variante segura para URL sirve para direcciones web, nombres de archivo, cookies y tokens, donde el más y la barra tienen un significado especial.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/data/mime-base64-encode-decode \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Hello, world!","mode":"encode"}'const res = await fetch("https://api.kit.forhosting.com/data/mime-base64-encode-decode", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Hello, world!",
"mode": "encode"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/data/mime-base64-encode-decode",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Hello, world!",
"mode": "encode"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/data/mime-base64-encode-decode", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Hello, world!","mode":"encode"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Hello, world!","mode":"encode"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/data/mime-base64-encode-decode", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"text": "Hello, world!",
"mode": "encode"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "data.mime_base64_encode_decode",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
max_mb | 25 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Úselo en el navegador o llame a la API cuando su aplicación necesite conversiones repetibles.
Codifique texto UTF-8 en una representación Base64 portátil
Elija el modo de codificación cuando disponga de texto normal y necesite una representación ASCII para un campo de texto, una configuración, un documento JSON o un límite de integración.
Elija Base64 estándar o URL-safe según el sistema receptor
La opción url_safe afecta tanto a la codificación como a la decodificación y debe reflejar el alfabeto esperado por la otra parte. La herramienta del navegador sirve para revisiones puntuales y la API cuesta $0.002 por solicitud automatizada.
Casos de integración
Prepare texto para una integración JSON
Codifique texto Unicode en el campo ASCII Base64 exigido por un esquema externo.
Preguntas técnicas
¿Cuánto cuesta una solicitud?
El precio de la API es $0.002 por solicitud y la versión del navegador puede usarse gratis de forma interactiva.