Decodifique una imagen Base64
La herramienta de información de imágenes Base64 comprueba un URI de datos completo y comunica dos datos prácticos: el tipo MIME declarado en la cabecera y el número de bytes representado por la carga codificada.
Ejecutar — gratis
Corre en su navegador. Gratis y sin límite: sus datos no salen de esta página.
Todo se procesa localmente, sin consultar una URL, subir una imagen, deducir una extensión ni examinar contenido remoto. La validación estricta detecta marcadores ausentes, caracteres no válidos, relleno incorrecto, bits residuales no canónicos y tipos ajenos a imágenes.
Lea la información que ya contiene el URI de datos
Un URI de imagen Base64 reúne metadatos y bytes codificados en una sola cadena. La cabecera identifica el tipo multimedia y la carga representa los datos binarios originales mediante caracteres imprimibles. Esta capacidad separa ambas partes únicamente después de confirmar la estructura completa. El resultado incluye `mime_type`, por ejemplo `image/png`, y `byte_length`, la cantidad exacta de bytes decodificados. El tamaño no se estima solo contando caracteres: también se considera el relleno Base64 final. Se informa del MIME declarado, sin afirmar que la firma binaria corresponda realmente a ese formato. Así puede saber qué declara el URI y cuánto ocupa su carga sin modificarla, normalizarla ni volver a codificarla.
Comprenda qué descarta la validación estricta
La forma admitida es un valor completo `data:image/type;base64,payload`. El tipo debe comenzar por `image/`, debe aparecer el marcador Base64 y una única coma debe separar la cabecera de la carga. Esta debe usar el alfabeto Base64 estándar, tener una longitud divisible por cuatro y reservar el relleno para el final. También se revisan los bits no utilizados del último grupo. Se rechazan cargas vacías, espacios, caracteres Base64url, parámetros adicionales, relleno ausente y URL web normales. Si su origen produce un fragmento Base64 sin cabecera, añada primero el MIME correcto; si entrega Base64url, conviértalo al Base64 estándar canónico.
Use la longitud sin exponer ni transferir la imagen
Conocer la longitud decodificada antes de guardar o reenviar una imagen ayuda a aplicar límites de carga, validar bases de datos, controlar tamaños de mensajes y alimentar registros operativos. Puede impedir que un recurso incrustado demasiado grande llegue a otro servicio, guardar metadatos coherentes junto a HTML o JSON y comparar imágenes embebidas con recursos enlazados. El cálculo es determinista y no necesita red: valida la cadena y deriva los bytes a partir de los grupos Base64 y el relleno final. No comprueba firmas, dimensiones ni daños internos, y tampoco devuelve el binario. Para esas tareas utilice un inspector de imágenes; para estructura y tamaño exacto, esta capacidad resulta adecuada.
Qué puede hacer con ella
Aplique límites a imágenes incrustadas
Compruebe la longitud decodificada antes de aceptar una imagen Base64 en una solicitud API, un documento o un formulario.
Catalogue URI de datos generados
Registre el MIME declarado y el tamaño binario de los recursos producidos por un editor, exportador o proceso de compilación.
Rechace pronto entradas defectuosas
Valide la sintaxis Base64 canónica antes de enviar imágenes incrustadas a sistemas de almacenamiento, renderizado o procesamiento.
Preguntas frecuentes
¿Qué devuelve la capacidad?
Devuelve `mime_type`, tomado de la cabecera validada, y `byte_length`, calculado desde la carga Base64 canónica.
¿Sube o descarga la imagen?
No. Realiza localmente una validación determinista y el cálculo del tamaño, sin acceso a redes externas.
¿El MIME demuestra el formato real de los bytes?
No. El resultado informa de la declaración MIME validada, pero no inspecciona firmas ni decodifica dimensiones.
¿Por qué se rechazó mi valor Base64?
Suele deberse a una cabecera ausente, un MIME que no es de imagen, espacios, caracteres URL-safe, relleno incorrecto, una carga vacía o bits residuales distintos de cero.
¿Cuánto cuesta?
La herramienta del navegador es gratuita en esta página. La automatización mediante API cuesta $0.002 por solicitud.
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/image/from-base64-info \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"data_uri":"https://ejemplo.com/imagen.jpg"}'const res = await fetch("https://api.kit.forhosting.com/image/from-base64-info", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"data_uri": "https://ejemplo.com/imagen.jpg"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/image/from-base64-info",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"data_uri": "https://ejemplo.com/imagen.jpg"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/image/from-base64-info", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"data_uri":"https://ejemplo.com/imagen.jpg"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"data_uri":"https://ejemplo.com/imagen.jpg"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/image/from-base64-info", 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
{
"data_uri": "https://ejemplo.com/imagen.jpg"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "image.from_base64_info",
"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_chars | 13981053 |
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. |