Skip to content

Instantly share code, notes, and snippets.

@daverickdunn
Last active May 14, 2021 13:06
Show Gist options
  • Save daverickdunn/8e9ba9351e4496ba69efa9214821c785 to your computer and use it in GitHub Desktop.
Save daverickdunn/8e9ba9351e4496ba69efa9214821c785 to your computer and use it in GitHub Desktop.
Base64 URL Encode Decode Typescript
export function encode(unencoded: string) {
return Buffer.from(unencoded).toString('base64');
};
export function decode(encoded: string) {
return Buffer.from(encoded, 'base64').toString('utf8');
};
export function urlEncode(unencoded: string) {
let encoded = encode(unencoded);
return encoded.replace(/\+/g, '-').replace(/\//g, '_').replace(/=+$/g, '');
};
export function urlDecode(encoded: string) {
let decoded = encoded.replace(/-/g, '+').replace(/_/g, '/');
while (decoded.length % 4) decoded += '=';
return decode(decoded);
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment