Maison > Article > interface Web > Comment convertir efficacement un blob d'un formulaire HTML en une chaîne Base64 ?
Dans cette requête de codage, l'utilisateur cherche à convertir un blob, obtenu à partir de la saisie d'un formulaire HTML, en une chaîne base64. Le code fourni affiche avec succès une image en créant un objet URL à l'aide de createObjectURL, mais la conversion souhaitée à l'aide de readAsBinaryString aboutit à une variable source nulle.
Pour résoudre ce problème et contourner la complexité du code fourni, une solution plus simple L'utilisation de la méthode readAsDataURL est présentée ci-dessous :
var reader = new FileReader(); reader.readAsDataURL(blob); reader.onloadend = function() { var base64data = reader.result; console.log(base64data); }
Selon la documentation FileReader, readAsDataURL encode le contenu comme base64.
Pour une gestion asynchrone, une fonction attendue peut être définie comme :
function blobToBase64(blob) { return new Promise((resolve, _) => { const reader = new FileReader(); reader.onloadend = () => resolve(reader.result); reader.readAsDataURL(blob); }); }
Remarque : Pour obtenir la chaîne codée en base64 seule, supprimez les données :< ;em>/;base64, à partir du résultat.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!