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
