आप से दो चुन सकते हैं
मैं एक यूआरएल-सुरक्षित बेस 64 स्ट्रिंग का उपयोग करता हूं। निम्नलिखित कुछ पायथन कोड है जो यह * करता है।
अंतिम पंक्ति '=' या '==' संकेत देती है कि आधार 64 एन्कोडिंग अंत में डालना पसंद करती है, वे पात्रों को एक URL में अधिक कठिन बनाते हैं और केवल जानकारी को डी-एन्कोडिंग के लिए आवश्यक होते हैं, यहां करने की आवश्यकता नहीं है।
import base64
import uuid
# get a UUID - URL safe, Base64
def get_a_Uuid():
r_uuid = base64.urlsafe_b64encode(uuid.uuid4().bytes)
return r_uuid.replace('=', '')
* यह मानकों का पालन करता है: base64.urlsafe_b64encode
आरएफसी 3548 और 4648 https://docs.python.org/2/library/base64.html देखने के इस प्रकार है। ज्ञात लंबाई के साथ बेस 64 एन्कोडेड डेटा से ==
स्ट्रिपिंग को RFC 4648 §3.2 देखें। यूयूआईडी/GUID RFC 4122 में निर्दिष्ट हैं; §4.1 Format कहता है "यूयूआईडी प्रारूप 16 ऑक्टेट्स है"। base64
-फ्यूशन इन 16 ऑक्टेट्स को एन्कोड करता है।
स्रोत
2013-08-29 18:19:28
अंतर्राष्ट्रीय वर्ण अभी भी कीड़े का एक छोटा सा हिस्सा हैं; यह ब्राउज़र में हमेशा काम कर सकता है, लेकिन यदि आप मेल क्लाइंट, एक त्वरित संदेशवाहक, या सबसे नाजुक मामला, एसएमएस, जैसे विभिन्न अनुप्रयोगों में कॉपी-पेस्टिंग कर रहे हैं, तो वे टूट जाएंगे। उत्तर द्वारा सुझाए गए बेस 64 अभी भी सबसे अच्छा तरीका है जब तक कि आप खतरनाक धारणा न करें कि उपयोगकर्ता एक ही वेब ब्राउज़र के बाहर इन लिंक का उपयोग नहीं करेंगे। – Ekevoo