Codieren Sie Base64 in Node.js

Shraddha Paghdar 12 Oktober 2023
Codieren Sie Base64 in Node.js

In diesem kurzen Artikel lernen wir, wie man Strings oder Text in Node.js in base64 umwandelt.

Base64-Codierung in Node.js

“Pufferobjekte” werden verwendet, um eine Folge von Bytes mit fester Länge darzustellen. Eine große Anzahl von Node.js-APIs unterstützt Puffer.

Ein String kann mit der Methode Buffer.from() in eine Folge von Bytes konvertiert werden, die den zu konvertierenden String und die aktuelle Kodierung des Strings übernimmt. Sie können diese Kodierung als UTF8. angeben.

Die JavaScript-Klasse Uint8Array ist eine Unterklasse der Buffer-Klasse, die neue Methoden hinzufügt, um verschiedenen Anwendungssituationen gerecht zu werden. Einfache Uint8Arrays werden von Node.js-APIs akzeptiert, solange Puffer unterstützt werden.

Obwohl auf die Buffer-Klasse im globalen Bereich zugegriffen werden kann, wird dennoch empfohlen, einen Import zu verwenden oder eine Anweisung zu benötigen, um explizit darauf zu verweisen. Beim Decodieren wird ein Puffer mit einer beliebigen Methode in einen String umgewandelt, und beim Codieren wird ein String in einen Puffer umgewandelt.

Die Funktion toString()-Methode kann dann verwendet werden, um die konvertierten Bytes als base64 zurückzugeben. Die bei der Konvertierung benötigte Kodierung wird über einen von dieser Prozedur akzeptierten Parameter angegeben.

Das Folgende sind zusätzliche Binär-zu-Text-Codierungen, die Node.js unterstützt.

  1. base64
  2. base64url
  3. hex

Die Base64-Kodierung akzeptiert das in RFC 4648 Abschnitt 5 beschriebene sichere Alphabet für URLs und Dateinamen, wenn ein Puffer aus einer Zeichenfolge erstellt wird. Leerzeichen in der base64-codierten Zeichenfolge, einschließlich Leerzeichen, Tabulatoren und Zeilenumbrüchen.

Lassen Sie es uns anhand eines einfachen Beispiels verstehen.

Code:

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

Wir haben den Text an den Puffer übergeben und erwartet, dass er ihn in base64 codiert. In der nächsten Codezeile dekodieren wir den Puffer von base64 nach ascii, was Ihr Klartext ist.

Versuchen Sie, das obige Beispiel in einem Compiler auszuführen, der Node.js unterstützt.

Ausgang:

SGVsbG8gRGVsZnRTdGFjayBSZWFkZXJzIQ==
Hello DelftStack Readers!

Demo ausführen

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

Verwandter Artikel - Node.js Encode