Cos'è Sqids?

Sqids è una libreria open-source che ti permette di generare identificatori unici brevi da numeri. Questi ID sono sicuri per gli URL, possono codificare diversi numeri e non contengono parole volgari comuni. Leggi di più .

Ecco come appaiono:

https://example.com/Lqj8a0

Esempio rapido di codifica e decodifica:

my $sqids = Sqids->new;
my $id = $sqids->encode(1, 2, 3); # "86Rf07"
my $numbers = $sqids->decode($id); # [1, 2, 3]

Se gli ID sono troppo corti, puoi aggiungere zeri fino a una certa lunghezza:

my $sqids = Sqids->new( min_length => 10 );
my $id = $sqids->encode(1, 2, 3); # "86Rf07xd4z"
my $numbers = $sqids->decode($id); # [1, 2, 3]

Crea ID univoci mescolando l'alfabeto:

my $sqids = Sqids->new( alphabet => 'k3G7QAe51FCsPW92uEOyq4Bg6Sp8YzVTmnU0liwDdHXLajZrfxNhobJIRcMvKt' );
my $id = $sqids->encode(1, 2, 3); # "XRKUdQ"
my $numbers = $sqids->decode($id); # [1, 2, 3]

La documentazione completa si trova su https://github.com/sqids/sqids-perl

Se stai cercando l'originale Hashids Perl, puoi trovarlo qui: https://github.com/zakame/hashids.pm

Utilizzi

L'uso principale di Sqids è puramente visivo. Se desideri utilizzare ID invece di numeri nel tuo progetto, Sqids potrebbe essere una buona scelta.

Buono Per

  • Codifica delle chiavi primarie Se stai usando un database relazionale
  • Risparmio di ricerche nel database Codificando più oggetti
  • Token di accesso temporanei Privi di volgarità e sicuri per gli URL

Non Buono Per

  • Dati sensibili Questa non è una libreria di crittografia
  • ID Utente Può rivelare il conteggio degli utenti se qualcuno scopre l'alfabeto di codifica

Caratteristiche

  • 🆔 Genera ID brevi da numeri non negativi
  • Facile codifica e decodifica
  • 🫣 Gli ID generati automaticamente non contengono volgarità comuni
  • 🎲 Supporto per ID personalizzati tramite alfabeto mescolato
  • 🥳 45 integrazioni (84% utilizzano un nuovo design)
  • 📌 Ogni versione produce gli stessi ID
  • 🍻 Piccola libreria con licenza permissiva

Esempio / Area di gioco