Sqids एक ओपन-सोर्स पुस्तकालय है जो आपको संख्याओं से छोटे अद्वितीय पहचानकर्ता उत्पन्न करने की अनुमति देता है। ये आईडी URL-सुरक्षित होती हैं, कई संख्याओं को एन्कोड कर सकती हैं, और सामान्य अश्लीलता वाले शब्द नहीं शामिल करतीं। और पढ़ें .
यह वे कैसे दिखते हैं:
त्वरित एन्कोड और डिकोड उदाहरण:
DEFINE VARIABLE sqids AS Sqids NO-UNDO.
DEFINE VARIABLE numbers AS INTEGER EXTENT 3 NO-UNDO.
DEFINE VARIABLE id AS CHARACTER NO-UNDO.
sqids = NEW Sqids().
ASSIGN
numbers[1] = 1
numbers[2] = 2
numbers[3] = 3.
id = sqids:Encode(numbers). // '86Rf07'.
numbers = sqids:Decode(id). // [1, 2, 3]
यदि आईडी बहुत छोटी हैं, तो आप उन्हें एक निश्चित लंबाई तक पैड कर सकते हैं:
DEFINE VARIABLE sqids AS Sqids NO-UNDO.
DEFINE VARIABLE numbers AS INTEGER EXTENT 3 NO-UNDO.
DEFINE VARIABLE id AS CHARACTER NO-UNDO.
sqids = NEW Sqids('', 10).
ASSIGN
numbers[1] = 1
numbers[2] = 2
numbers[3] = 3.
id = sqids:Encode(numbers). // '86Rf07xd4z'.
numbers = sqids:Decode(id). // [1, 2, 3]
वर्णमाला को छानकर अद्वितीय आईडी बनाएं:
DEFINE VARIABLE sqids AS Sqids NO-UNDO.
DEFINE VARIABLE numbers AS INTEGER EXTENT 3 NO-UNDO.
DEFINE VARIABLE id AS CHARACTER NO-UNDO.
sqids = NEW Sqids('k3G7QAe51FCsPW92uEOyq4Bg6Sp8YzVTmnU0liwDdHXLajZrfxNhobJIRcMvKt').
ASSIGN
numbers[1] = 1
numbers[2] = 2
numbers[3] = 3.
id = sqids:Encode(numbers). // 'XRKUdQ'.
numbers = sqids:Decode(id). // [1, 2, 3]
पूर्ण दस्तावेज़ीकरण यहाँ उपलब्ध है https://github.com/sqids/sqids-openedge-abl
Sqids का मुख्य उपयोग केवल दृश्यिक रूप से है। अगर आप अपने प्रोजेक्ट में संख्याओं की बजाय आईडी का उपयोग करना चाहते हैं, तो Sqids एक अच्छा विकल्प हो सकता है।