>  기사  >  웹 프론트엔드  >  Blob을 HTML 양식에서 Base64 문자열로 효율적으로 변환하는 방법은 무엇입니까?

Blob을 HTML 양식에서 Base64 문자열로 효율적으로 변환하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-11-17 16:51:02676검색

How to Efficiently Convert a Blob from an HTML Form to a Base64 String?

Blob을 Base64로 변환

이 코딩 쿼리에서 사용자는 HTML 양식 입력에서 얻은 Blob을 base64 문자열로 변환하려고 합니다. 제공된 코드는 createObjectURL을 사용하여 URL 객체를 생성하여 이미지를 성공적으로 표시하지만 readAsBinaryString을 사용하여 원하는 변환으로 인해 null 소스 변수가 생성됩니다.

이 문제를 해결하고 제공된 코드의 복잡성을 우회하려면 더 간단한 솔루션 readAsDataURL 메서드를 활용하는 방법은 다음과 같습니다.

var reader = new FileReader();
reader.readAsDataURL(blob); 
reader.onloadend = function() {
  var base64data = reader.result;                
  console.log(base64data);
}

FileReader 설명서에 따르면 readAsDataURL은 콘텐츠를 다음과 같이 인코딩합니다. base64.

비동기 처리의 경우 대기 가능 함수를 다음과 같이 정의할 수 있습니다.

function blobToBase64(blob) {
  return new Promise((resolve, _) => {
    const reader = new FileReader();
    reader.onloadend = () => resolve(reader.result);
    reader.readAsDataURL(blob);
  });
}

참고: base64로 인코딩된 문자열만 얻으려면 데이터를 제거하세요.< ;em>/base64, 결과에서.

위 내용은 Blob을 HTML 양식에서 Base64 문자열로 효율적으로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.