w

Référence API

Référence technique pour les opérations d'encodage et de décodage Base64.

Algorithme Base64

Jeu de Caractères

Base64 utilise 64 caractères pour représenter les données binaires :

ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/

Processus d'Encodage

  1. Entrée : Données binaires ou texte
  2. Regroupement : Grouper en blocs de 3 octets (24 bits)
  3. Conversion : Convertir chaque groupe de 24 bits en 4 caractères Base64
  4. Remplissage : Ajouter le remplissage si nécessaire

Processus de Décodage

  1. Entrée : Chaîne encodée Base64
  2. Validation : Vérifier le format Base64 valide
  3. Conversion : Convertir les groupes de 4 caractères en blocs de 3 octets
  4. Sortie : Données binaires ou texte original

Formats de Sortie

Base64 Standard

  • Format : Encodage Base64 traditionnel
  • Remplissage : Utilise = pour le remplissage
  • Caractères : A-Z, a-z, 0-9, +, /
  • Cas d'Usage : Encodage à usage général

Exemple :

Entrée : "Hello"
Sortie : "SGVsbG8="

Base64 Sécurisé pour URL

  • Format : Base64 modifié pour les URLs
  • Remplissage : Aucun caractère de remplissage
  • Caractères : A-Z, a-z, 0-9, -, _
  • Cas d'Usage : Paramètres d'URL, noms de fichiers

Exemple :

Entrée : "Hello"
Sortie : "SGVsbG8"

Base64 Sans Remplissage

  • Format : Base64 standard sans remplissage
  • Remplissage : Aucun caractère de remplissage
  • Caractères : A-Z, a-z, 0-9, +, /
  • Cas d'Usage : Applications spécifiques

Exemple :

Entrée : "Hello"
Sortie : "SGVsbG8"

Encodage de Caractères

UTF-8 (Recommandé)

  • Standard : Format de Transformation Unicode
  • Support : Tous les caractères Unicode
  • Compatibilité : Support largement répandu
  • Cas d'Usage : Texte international

ASCII

  • Plage : Caractères 0-127
  • Support : Caractères latins de base
  • Compatibilité : Support universel
  • Cas d'Usage : Texte anglais uniquement

Latin-1 (ISO-8859-1)

  • Plage : Caractères 0-255
  • Support : Caractères d'Europe occidentale
  • Compatibilité : Bon support
  • Cas d'Usage : Langues européennes

Traitement de Fichiers

Types de Fichiers Supportés

  • Images : PNG, JPEG, GIF, WebP, SVG, BMP
  • Documents : PDF, DOC, DOCX, TXT, RTF
  • Archives : ZIP, RAR, 7Z, TAR, GZ
  • Audio : MP3, WAV, OGG, FLAC
  • Vidéo : MP4, AVI, MOV, WMV
  • Tout Binaire : Tous les types de fichiers supportés

Limites de Taille de Fichier

  • Taille Maximale : 10MB par fichier
  • Utilisation Mémoire : Optimisé pour les gros fichiers
  • Traitement : Traitement par blocs pour l'efficacité

Gestion d'Erreurs

Erreurs Courantes

  • Base64 Invalide : Chaîne Base64 malformée
  • Fichier Trop Gros : Dépasse les limites de taille
  • Format Non Supporté : Type de fichier invalide
  • Erreur d'Encodage : Problèmes d'encodage de caractères

Messages d'Erreur

  • Convivial : Descriptions d'erreur claires
  • Actionnable : Suggère des solutions
  • Non Technique : Facile à comprendre
  • Utile : Fournit des conseils

Spécifications de Performance

Vitesse de Traitement

  • Texte : Traitement en temps réel
  • Petits Fichiers : < 1 seconde
  • Gros Fichiers : Dépend de la taille et de la complexité
  • Optimisation : Algorithmes efficaces utilisés

Utilisation Mémoire

  • Minimale : Faible empreinte mémoire
  • Efficace : Optimisé pour les performances
  • Nettoyage : Gestion automatique de la mémoire
  • Limites : Respecte les limitations du navigateur

Compatibilité Navigateur

  • Chrome : Support complet
  • Firefox : Support complet
  • Safari : Support complet
  • Edge : Support complet
  • Mobile : iOS Safari, Chrome Mobile

Fonctionnalités Requises

  • API Fichier : Pour les téléchargements de fichiers
  • API Presse-papiers : Pour la fonctionnalité de copie
  • ES6+ : Fonctionnalités JavaScript modernes
  • Web Workers : Pour le traitement de gros fichiers

Exemples d'Intégration

JavaScript

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

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

Python

import base64

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

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

PHP

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

// Décoder
$decoded = base64_decode('SGVsbG8gV29ybGQ=');
echo $decoded; // "Hello World"

Cette référence API fournit la base technique pour comprendre et implémenter efficacement les opérations Base64.

Cette page vous a-t-elle été utile ?