Sqids sayılarından kısa eşsiz tanımlayıcılar oluşturmanıza izin veren açık kaynaklı bir kütüphanedir. Bu kimlikler URL'ye uygun, birkaç sayıyı kodlayabilir ve yaygın küfür içermemektedir. Daha Fazla Oku .
Bunlar nasıl görünüyor:
Hızlı kodlama ve kod çözme örneği:
case sqids (encode [1, 2, 3]) of
Left {} -> print "Something went wrong."
Right id -> print id -- "86Rf07"
case sqids (decode "86Rf07") of
Left {} -> print "Something went wrong."
Right numbers -> print numbers -- [1, 2, 3]
Eğer kimlikler çok kısa ise, onları belirli bir uzunluğa kadar doldurabilirsiniz:
case runSqids defaultSqidsOptions{ minLength = 10 } (encode [1, 2, 3]) of
Left {} -> print "Something went wrong."
Right id -> print id -- "86Rf07xd4z"
Alfabeyi karıştırarak benzersiz kimlikler oluştur:
case runSqids defaultSqidsOptions{ alphabet = "k3G7QAe51FCsPW92uEOyq4Bg6Sp8YzVTmnU0liwDdHXLajZrfxNhobJIRcMvKt" } (encode [1, 2, 3]) of
Left {} -> print "Something went wrong."
Right id -> print id -- "XRKUdQ"
Tam belge burada bulunmaktadır https://github.com/sqids/sqids-haskell
Orijinal Hashids Haskell'i arıyorsanız, burada bulabilirsiniz: https://github.com/laserpants/hashids-haskell
Sqids ana kullanımı tamamen görseldir. Projede sayılar yerine kimlik kullanmak isterseniz, Sqids iyi bir seçenek olabilir.