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:
s, _ := sqids.New()
id, _ := s.Encode([]uint64{1, 2, 3}) // "86Rf07"
numbers := s.Decode(id) // [1, 2, 3]
Eğer kimlikler çok kısa ise, onları belirli bir uzunluğa kadar doldurabilirsiniz:
s, _ := sqids.New(sqids.Options{
MinLength: 10,
})
id, _ := s.Encode([]uint64{1, 2, 3}) // "86Rf07xd4z"
numbers := s.Decode(id) // [1, 2, 3]
Alfabeyi karıştırarak benzersiz kimlikler oluştur:
s, _ := sqids.New(sqids.Options{
Alphabet: "k3G7QAe51FCsPW92uEOyq4Bg6Sp8YzVTmnU0liwDdHXLajZrfxNhobJIRcMvKt",
})
id, _ := s.Encode([]uint64{1, 2, 3}) // "XRKUdQ"
numbers := s.Decode(id) // [1, 2, 3]
Tam belge burada bulunmaktadır https://github.com/sqids/sqids-go
Orijinal Hashids Go'i arıyorsanız, burada bulabilirsiniz: https://github.com/speps/go-hashids
Sqids ana kullanımı tamamen görseldir. Projede sayılar yerine kimlik kullanmak isterseniz, Sqids iyi bir seçenek olabilir.