เรามักจะผ่านบริการต่างๆ เช่น bit.ly และ tinyurl ซึ่งรับ url ใด ๆ และ (มักจะยาวกว่าหนึ่งอัน) ดำเนินการอัลกอริธึมการเข้ารหัสและส่งคืน url ที่สั้นมาก และความคล้ายคลึงกันเมื่อเราพยายามเปิด url เล็ก ๆ นั้น มันจะรันอัลกอริธึมถอดรหัสอีกครั้งและแปลง URL แบบสั้นเป็น URL ดั้งเดิมซึ่งจะเปิดลิงก์ให้เรา
เรายังต้องทำงานเดียวกัน เราจำเป็นต้องเขียนสองฟังก์ชัน -
-
เข้ารหัส() --> จะใช้ URL เดิมและส่งคืน ur ที่ไม่ซ้ำแบบสั้นมาหาเรา
-
ถอดรหัส() --> จะใช้ URL แบบสั้น โดยจะไม่มีแนวคิดเกี่ยวกับ URL ดั้งเดิมมาก่อนและแปลงเป็น URL ดั้งเดิม
ตัวอย่าง
รหัสสำหรับสิ่งนี้จะเป็น −
const url ='https://developer.mozilla.org/en-US/docs/Web/JavaScript';const encrypt =(longUrl) => { const encodedUrl =Buffer.from (longUrl, 'binary') .toString('base64'); ส่งคืน "https://mydemo.com/" + encodedUrl;};const decrypt =function (shortUrl) { ให้ encodedUrl =shortUrl.split ('mydemo.com/') [1]; return Buffer.from(encodedUrl, 'base64').toString();};const encrypted =encrypt(url);const decrypted =ถอดรหัส (เข้ารหัส);console.log(encrypted);console.log(ถอดรหัส);ก่อน>ผลลัพธ์
และผลลัพธ์ในคอนโซลจะเป็น −
https://mydemo.com/aHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSmF2YVNjcmlwdA==https://developer.mozilla.org/en-US/Scripts/preWeb/Java