Sqids एक ओपन-सोर्स पुस्तकालय है जो आपको संख्याओं से छोटे अद्वितीय पहचानकर्ता उत्पन्न करने की अनुमति देता है। ये आईडी URL-सुरक्षित होती हैं, कई संख्याओं को एन्कोड कर सकती हैं, और सामान्य अश्लीलता वाले शब्द नहीं शामिल करतीं। और पढ़ें .
यह वे कैसे दिखते हैं:
त्वरित एन्कोड और डिकोड उदाहरण:
val sqids = Sqids.default
val id = sqids.encodeUnsafeString(1, 2, 3) // "86Rf07"
val numbers = sqids.decode(id) // List(1, 2, 3)
यदि आईडी बहुत छोटी हैं, तो आप उन्हें एक निश्चित लंबाई तक पैड कर सकते हैं:
Sqids
.withMinLength(10)
.foreach { sqids =>
val id = sqids.encodeUnsafeString(1, 2, 3) // "86Rf07xd4z"
val numbers = sqids.decode(id) // List(1, 2, 3)
}
वर्णमाला को छानकर अद्वितीय आईडी बनाएं:
Alphabet("k3G7QAe51FCsPW92uEOyq4Bg6Sp8YzVTmnU0liwDdHXLajZrfxNhobJIRcMvKt")
.flatMap(Sqids.forAlphabet)
.foreach { sqids =>
val id = sqids.encodeUnsafeString(1, 2, 3) // "XRKUdQ"
val numbers = sqids.decode(id) // List(1, 2, 3)
}
पूर्ण दस्तावेज़ीकरण यहाँ उपलब्ध है https://github.com/sqids/sqids-scala
यदि आप मूल Hashids Scala ढूंढ रहे हैं, तो आप इसे यहाँ पा सकते हैं: https://github.com/newhoggy/hashids-scala
Sqids का मुख्य उपयोग केवल दृश्यिक रूप से है। अगर आप अपने प्रोजेक्ट में संख्याओं की बजाय आईडी का उपयोग करना चाहते हैं, तो Sqids एक अच्छा विकल्प हो सकता है।