Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Thuật toán mã hóa/giải mã rút gọn URL trong JavaScript


Các dịch vụ như bit.ly, tinyurl nhận URL dài, mã hóa và trả về URL ngắn. Khi mở URL ngắn, giải mã ngược về URL gốc.

Cần viết hai hàm:

  • encrypt() -- nhận URL gốc, trả về URL ngắn duy nhất.

  • decrypt() -- nhận URL ngắn, không biết URL gốc, chuyển về URL gốc.

Ví dụ

Mã thực hiện:

const url = 'https://developer.mozilla.org/en-US/docs/Web/JavaScript'; const encrypt = (longUrl) => {    const encodedUrl = Buffer.from(longUrl, 'binary').toString('base64');    return "https://mydemo.com/" + encodedUrl; }; const decrypt = function(shortUrl) {    let encodedUrl = shortUrl.split('mydemo.com/')[1];    return Buffer.from(encodedUrl, 'base64').toString(); }; const encrypted = encrypt(url); const decrypted = decrypt(encrypted); console.log(encrypted); console.log(decrypted);

Kết quả

Kết quả in ra console:

https://mydemo.com/aHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSmF2YVNjcmlwdA== https://developer.mozilla.org/en-US/docs/Web/JavaScript