हम अक्सर bit.ly और tinyurl जैसी सेवाओं से गुजरते हैं जो किसी भी URL को लेती हैं (आमतौर पर लंबाई में बड़ी), उस पर कुछ एन्क्रिप्शन एल्गोरिदम लागू करती हैं और बहुत छोटा URL वापस करती हैं। और जब हम उस छोटे URL को खोलने की कोशिश करते हैं, तो वह फिर से उस पर कुछ डिक्रिप्शन एल्गोरिदम चलाता है और छोटे URL को मूल में बदल देता है और हमारे लिए लिंक खोल देता है।
हमें भी वही कार्य करना है। हमें वास्तव में दो फ़ंक्शन लिखने हैं:
encrypt() -> यह मूल URL लेगा और हमें एक छोटा यूनिक URL वापस करेगा।
decrypt() -> यह छोटा 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'); 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);आउटपुट
कंसोल में आउटपुट होगा:
https://mydemo.com/aHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSmF2YVNjcmlwdA== https://developer.mozilla.org/en-US/docs/Web/JavaScript