Šta je Sqids?

Sqids je open-source biblioteka koja vam omogućava da generišete kratke jedinstvene identifikatore iz brojeva. Ovi ID-ovi su bezbedni za URL, mogu kodirati nekoliko brojeva i ne sadrže uobičajene psovke. Pročitaj više .

Ovako izgledaju:

https://example.com/Lqj8a0

Brzi primer enkodiranja i dekodiranja:

Sqids *sqids = [[Sqids alloc] init];
NSString *id_ = [sqids encode:@[@1, @2, @3] error:nil]; // @"86Rf07"
NSArray<NSNumber *> *numbers = [sqids decode:id_]; // @[@1, @2, @3]

Ako su ID-ovi prekratki, možete ih produžiti do određene dužine:

SqidsOptions *options = [[SqidsOptions alloc] init];
options.minLength = @10;
Sqids *sqids = [[Sqids alloc] initWithOptions:options];
NSString *id_ = [sqids encode:@[@1, @2, @3] error:nil]; // @"86Rf07xd4z"
NSArray<NSNumber *> *numbers = [sqids decode:id_]; // @[@1, @2, @3]

Kreirajte jedinstvene ID-ove mešanjem abecede:

SqidsOptions *options = [[SqidsOptions alloc] init];
options.alphabet = @"k3G7QAe51FCsPW92uEOyq4Bg6Sp8YzVTmnU0liwDdHXLajZrfxNhobJIRcMvKt";
Sqids *sqids = [[Sqids alloc] initWithOptions:options];
NSString *id_ = [sqids encode:@[@1, @2, @3] error:nil]; // @"XRKUdQ"
NSArray<NSNumber *> *numbers = [sqids decode:id_]; // @[@1, @2, @3]

Cela dokumentacija je na https://github.com/sqids/sqids-objective-c

Ako tražite originalni Hashids Objective-C, možete ga pronaći ovde: https://github.com/DrGodCarl/hashids-objc

Upotrebe

Glavna upotreba Sqids je čisto vizuelna. Ako želite da koristite ID-ove umesto brojeva u svom projektu, Sqids bi mogao biti dobar izbor.

Dobar za

  • Kodiranje primarnih ključeva Ako koristite relacionu bazu podataka
  • Čuvanje pretraga baze podataka Kodiranjem više objekata
  • Privremeni login tokeni Bez psovki i siguran za URL

Nije dobar za

  • Osetljivi podaci Ovo nije biblioteka za šifrovanje
  • Korisnički ID-ovi Može otkriti broj korisnika ako neko sazna abecedu enkodiranja

Funkcionalnosti

  • 🆔 Generisanje kratkih ID-ova iz ne-negativnih brojeva
  • Lako kodiranje i dekodiranje
  • 🫣 Automatski generisani ID-ovi ne sadrže uobičajene psovke
  • 🎲 Podrška za prilagođene ID-ove putem promenjenog abecede
  • 🥳 44 integracija (75% koristi novi dizajn)
  • 📌 Svaka verzija proizvodi iste ID-ove
  • 🍻 Mala biblioteka sa dozvolom za upotrebu

Primer / Igralište