Кодирование / Декодирование Base64/ На стороне клиента
Преобразование текста в Base64 и обратно. Полная поддержка Unicode, URL-безопасный режим, без отправки на сервер.
Этот инструмент решил вашу проблему?
Что такое кодировка Base64
Base64 — это схема кодирования, которая представляет бинарные данные с помощью 64 печатных ASCII-символов. Каждые 3 байта (24 бита) кодируются в 4 символа, используются только A-Z, a-z, 0-9, +, / и символ заполнения =. Base64 НЕ является алгоритмом шифрования — это формат кодирования, который任何人 может легко декодировать, не提供 никакой безопасности.
Типичные применения Base64
Вложения электронной почты: протокол MIME использует Base64 для二进制ных вложений. Data URL: встраивание изображений, шрифтов и других ресурсов直接 в CSS или HTML для减少 HTTP-запросов. Передача через API: кодирование二进制ных данных (изображений, PDF) в JSON в виде строк Base64. JWT-токены: заголовок и полезная нагрузка JWT — это JSON, закодированный в Base64. Базовая аутентификация: HTTP Basic Auth кодирует логин:пароль в Base64.
Насколько увеличивает Base64 размер файла
Кодирование Base64增加 размер данных примерно на 33%. Поскольку每 3原始 байта превращаются в 4 символа, закодированный размер = ceil(原始 размер / 3) × 4.因此 для больших файлов直接ная передача二进制ных данных более эффективна. Но当 необходимо передавать二进制ные данные только через текстовый канал (JSON, XML, URLs), Base64 является стандартным решением.
Примеры кода
// Encode (ASCII only)
const encoded = btoa("Hello, World!");
// Decode
const decoded = atob(encoded);
// Encode Unicode (CJK, emoji, etc.)
function b64Encode(str) {
const bytes = new TextEncoder().encode(str);
const bin = String.fromCharCode(...bytes);
return btoa(bin);
}
function b64Decode(b64) {
const bin = atob(b64);
const bytes = Uint8Array.from(bin, c => c.charCodeAt(0));
return new TextDecoder().decode(bytes);
}import base64
# Encode
text = "Hello, 世界 🌏"
encoded = base64.b64encode(text.encode("utf-8")).decode()
print(encoded)
# Decode
decoded = base64.b64decode(encoded).decode("utf-8")
print(decoded)
# URL-safe variant
url_safe = base64.urlsafe_b64encode(
text.encode("utf-8")
).decode().rstrip("=")import "encoding/base64"
// Encode
encoded := base64.StdEncoding.
EncodeToString([]byte("Hello, World!"))
// Decode
decoded, err := base64.StdEncoding.
DecodeString(encoded)
// URL-safe
urlSafe := base64.URLEncoding.
EncodeToString([]byte("Hello, World!"))# Encode echo -n "Hello, World!" | base64 # Decode echo "SGVsbG8sIFdvcmxkIQ==" | base64 -d # URL-safe encode (GNU coreutils) echo -n "Hello" | base64 | tr '+/' '-_' | tr -d '='