Node.js에서 Base64 인코딩

Shraddha Paghdar 2023년10월12일
Node.js에서 Base64 인코딩

이 짧은 기사에서는 Node.js에서 문자열이나 텍스트를 base64로 변환하는 방법을 배웁니다.

Node.js의 Base64 인코딩

‘버퍼 객체’는 고정 길이 바이트 시퀀스를 나타내는 데 사용됩니다. 많은 Node.js API가 버퍼를 지원합니다.

변환할 문자열과 문자열의 현재 인코딩을 사용하는 Buffer.from() 메서드를 사용하여 문자열을 일련의 바이트로 변환할 수 있습니다. 이 인코딩을 UTF8.로 지정할 수 있습니다.

JavaScript 클래스 Uint8Array버퍼 클래스 하위 클래스로, 다양한 사용 상황에 맞게 새로운 메서드를 추가합니다. 간단한 Uint8Arrays는 버퍼가 지원되는 한 Node.js API에서 허용됩니다.

버퍼 클래스는 전역 범위에서 액세스할 수 있지만 여전히 가져오기를 사용하거나 이를 명시적으로 참조하는 명령문이 필요합니다. 디코딩은 임의의 방법을 사용하여 버퍼를 문자열로 바꾸는 것이고 인코딩은 문자열을 버퍼로 바꾸는 것입니다.

그런 다음 toString() 함수를 사용하여 변환된 바이트를 base64로 반환할 수 있습니다. 변환 중에 필요한 인코딩은 이 절차에서 허용되는 매개변수를 통해 지정됩니다.

다음은 Node.js가 지원하는 추가적인 binary-to-text 인코딩입니다.

  1. base64
  2. base64url
  3. 헥스

Base64 인코딩은 문자열에서 버퍼를 구성할 때 RFC 4648 섹션 5에 설명된 URL 및 파일 이름 안전 알파벳을 허용합니다. 공백, 탭 및 줄 바꿈을 포함하여 base64로 인코딩된 문자열의 공백입니다.

간단한 예를 들어 이해해 봅시다.

암호:

console.log(Buffer.from('Hello DelftStack Readers!').toString('base64'));
console.log(Buffer.from('SGVsbG8gRGVsZnRTdGFjayBSZWFkZXJzIQ==', 'base64')
                .toString('ascii'));

텍스트를 버퍼에 전달하고 base64로 인코딩할 것으로 예상했습니다. 다음 코드 줄에서는 base64에서 일반 텍스트인 ascii로 버퍼를 디코딩합니다.

Node.js를 지원하는 컴파일러에서 위의 예제를 실행해 보세요.

출력:

SGVsbG8gRGVsZnRTdGFjayBSZWFkZXJzIQ==
Hello DelftStack Readers!

데모 실행

Shraddha Paghdar avatar Shraddha Paghdar avatar

Shraddha is a JavaScript nerd that utilises it for everything from experimenting to assisting individuals and businesses with day-to-day operations and business growth. She is a writer, chef, and computer programmer. As a senior MEAN/MERN stack developer and project manager with more than 4 years of experience in this sector, she now handles multiple projects. She has been producing technical writing for at least a year and a half. She enjoys coming up with fresh, innovative ideas.

LinkedIn

관련 문장 - Node.js Encode