Vad är Sqids?

Sqids är ett öppen-källkods-bibliotek som låter dig generera korta unika identifierare från nummer. Dessa ID:n är URL-säkra, kan koda flera nummer och innehåller inte vanliga svordomar. Läs mer .

Så här ser de ut:

https://example.com/Lqj8a0

Snabb kodnings- och avkodningsexempel:

var sqids = new Sqids();
var id = sqids.encode([1, 2, 3]); // "86Rf07"
var numbers = sqids.decode(id); // [1, 2, 3]

Om ID:n är för korta kan du fylla på dem till en viss längd:

var sqids = new Sqids({
  minLength: 10,
});

var id = sqids.encode([1, 2, 3]); // "86Rf07xd4z"
var numbers = sqids.decode(id); // [1, 2, 3]

Skapa unika ID:n genom att blanda alfabetet:

var sqids = new Sqids({
  alphabet: 'k3G7QAe51FCsPW92uEOyq4Bg6Sp8YzVTmnU0liwDdHXLajZrfxNhobJIRcMvKt',
});

var id = sqids.encode([1, 2, 3]); // "XRKUdQ"
var numbers = sqids.decode(id); // [1, 2, 3]

Fullständig dokumentation finns på https://github.com/sqids/sqids-haxe

Om du letar efter det ursprungliga Hashids Haxe, hittar du det här: https://github.com/kevinresol/hashids

Användningsområden

Det primära användningsområdet för Sqids är rent visuellt. Om du vill använda ID:n istället för nummer i ditt projekt kan Sqids vara ett bra val.

Bra för

  • Kodning av primärnycklar Om du använder en relationsdatabas
  • Spara databashämtningar Genom att koda flera objekt
  • Tillfälliga inloggnings-token Fri från svordomar och URL-säkra

Inte bra för

  • Känsliga data Detta är inte ett krypteringsbibliotek
  • Användar-ID:n Kan avslöja antalet användare om någon får tag på kodningsalfabetet

Funktioner

  • 🆔 Generera korta ID:n från icke-negativa nummer
  • Enkel kodning och avkodning
  • 🫣 Auto-genererade ID:n innehåller inte vanliga svordomar
  • 🎲 Stöd för anpassade ID:n via skufflat alfabet
  • 🥳 45 integrationer (84% använder en ny design)
  • 📌 Varje version producerar samma ID:n
  • 🍻 Litet bibliotek med en tillåtande licens

Exempel / Lekplats