w

Referência da API

Referência técnica para operações de codificação e decodificação Base64.

Algoritmo Base64

Conjunto de Caracteres

Base64 usa 64 caracteres diferentes para representar dados binários:

ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/

Processo de Codificação

  1. Entrada: Dados binários ou texto
  2. Agrupamento: Agrupar em blocos de 3 bytes (24 bits)
  3. Conversão: Converter cada grupo de 24 bits em 4 caracteres Base64
  4. Preenchimento: Adicionar preenchimento conforme necessário

Processo de Decodificação

  1. Entrada: String codificada em Base64
  2. Validação: Verificar formato Base64 válido
  3. Conversão: Converter grupos de 4 caracteres em blocos de 3 bytes
  4. Saída: Dados binários ou texto original

Formatos de Saída

Base64 Padrão

  • Formato: Codificação Base64 tradicional
  • Preenchimento: Usa = para preenchimento
  • Caracteres: A-Z, a-z, 0-9, +, /
  • Caso de uso: Codificação geral

Exemplo:

Entrada: "Hello"
Saída: "SGVsbG8="

Base64 Seguro para URL

  • Formato: Base64 modificado para URLs
  • Preenchimento: Sem caracteres de preenchimento
  • Caracteres: A-Z, a-z, 0-9, -, _
  • Caso de uso: Parâmetros de URL, nomes de arquivo

Exemplo:

Entrada: "Hello"
Saída: "SGVsbG8"

Base64 Sem Preenchimento

  • Formato: Base64 padrão sem preenchimento
  • Preenchimento: Sem caracteres de preenchimento
  • Caracteres: A-Z, a-z, 0-9, +, /
  • Caso de uso: Aplicações específicas

Exemplo:

Entrada: "Hello"
Saída: "SGVsbG8"

Codificação de Caracteres

UTF-8 (Recomendado)

  • Padrão: Formato de Transformação Unicode
  • Suporte: Todos os caracteres Unicode
  • Compatibilidade: Amplamente suportado
  • Caso de uso: Texto internacional

ASCII

  • Faixa: Caracteres 0-127
  • Suporte: Apenas caracteres latinos básicos
  • Compatibilidade: Suporte universal
  • Caso de uso: Apenas texto em inglês

Latin-1 (ISO-8859-1)

  • Faixa: Caracteres 0-255
  • Suporte: Caracteres da Europa Ocidental
  • Compatibilidade: Bom suporte
  • Caso de uso: Idiomas europeus

Processamento de Arquivos

Tipos de Arquivo Suportados

  • Imagens: PNG, JPEG, GIF, WebP, SVG, BMP
  • Documentos: PDF, DOC, DOCX, TXT, RTF
  • Arquivos: ZIP, RAR, 7Z, TAR, GZ
  • Áudio: MP3, WAV, OGG, FLAC
  • Vídeo: MP4, AVI, MOV, WMV
  • Qualquer arquivo binário: Todos os tipos de arquivo suportados

Limites de Tamanho de Arquivo

  • Tamanho máximo: 10MB por arquivo
  • Uso de memória: Otimizado para arquivos grandes
  • Processamento: Processamento em blocos para eficiência

Tratamento de Erros

Erros Comuns

  • Base64 inválido: String Base64 mal formada
  • Arquivo muito grande: Excede limites de tamanho
  • Formato não suportado: Tipo de arquivo inválido
  • Erro de codificação: Problemas de codificação de caracteres

Mensagens de Erro

  • Amigável ao usuário: Descrições de erro claras
  • Acionável: Sugere soluções
  • Não técnico: Fácil de entender
  • Útil: Fornece orientação

Especificações de Performance

Velocidade de Processamento

  • Texto: Processamento em tempo real
  • Arquivos pequenos: < 1 segundo
  • Arquivos grandes: Depende do tamanho e complexidade
  • Otimização: Usa algoritmos eficientes

Uso de Memória

  • Mínimo: Baixo consumo de memória
  • Eficiente: Otimizado para performance
  • Limpeza: Gerenciamento automático de memória
  • Limites: Respeita limitações do navegador

Compatibilidade do Navegador

  • Chrome: Suporte completo
  • Firefox: Suporte completo
  • Safari: Suporte completo
  • Edge: Suporte completo
  • Mobile: iOS Safari, Chrome Mobile

Recursos Necessários

  • File API: Para uploads de arquivo
  • Clipboard API: Para funcionalidade de cópia
  • ES6+: Recursos JavaScript modernos
  • Web Workers: Para processamento de arquivos grandes

Exemplos de Integração

JavaScript

// Codificar
const encoded = btoa('Hello World');
console.log(encoded); // "SGVsbG8gV29ybGQ="

// Decodificar
const decoded = atob('SGVsbG8gV29ybGQ=');
console.log(decoded); // "Hello World"

Python

import base64

# Codificar
encoded = base64.b64encode(b'Hello World').decode('utf-8')
print(encoded)  # "SGVsbG8gV29ybGQ="

# Decodificar
decoded = base64.b64decode('SGVsbG8gV29ybGQ=').decode('utf-8')
print(decoded)  # "Hello World"

PHP

// Codificar
$encoded = base64_encode('Hello World');
echo $encoded; // "SGVsbG8gV29ybGQ="

// Decodificar
$decoded = base64_decode('SGVsbG8gV29ybGQ=');
echo $decoded; // "Hello World"

Esta referência da API fornece a base técnica para compreender e implementar efetivamente operações Base64.

Esta página foi útil?