Using Node on the server side, we find that we cannot use the JavaScript functions atob and btoa. They are not defined; we get the following errors:
ReferenceError: btoa is not defined
ReferenceError: atob is not defined
The functions are defined in JavaScript in the browser, but not in server-side Node.js.
To encode to base-64, instead of btoa use the following:
const myString = 'hello' const encoded = Buffer.from(myString) .toString('base64') console.log(encoded)
Output:
aGVsbG8=
To decode from base-64, instead of atob use the following:
const base64String = 'aGVsbG8=' const decoded = Buffer.from(base64String, 'base64') .toString('utf-8') console.log(decoded)
Output:
hello