Sqids é uma biblioteca de código aberto que permite gerar identificadores únicos curtos a partir de números. Esses IDs são seguros para URLs, podem codificar vários números e não contêm palavras de baixo calão comuns. Leia mais .
Assim é como eles se parecem:
Exemplo rápido de codificação e decodificação:
let sqids = Sqids::default();
let id = sqids.encode(&[1, 2, 3])?; // "86Rf07"
let numbers = sqids.decode(&id); // [1, 2, 3]
Se os IDs forem muito curtos, você pode preenchê-los até um certo comprimento:
let sqids = Sqids::builder()
.min_length(10)
.build()?;
let id = sqids.encode(&[1, 2, 3])?; // "86Rf07xd4z"
let numbers = sqids.decode(&id); // [1, 2, 3]
Crie IDs únicos embaralhando o alfabeto:
let sqids = Sqids::builder()
.alphabet("k3G7QAe51FCsPW92uEOyq4Bg6Sp8YzVTmnU0liwDdHXLajZrfxNhobJIRcMvKt".chars().collect())
.build()?;
let id = sqids.encode(&[1, 2, 3])?; // "XRKUdQ"
let numbers = sqids.decode(&id); // [1, 2, 3]
A documentação completa está em https://github.com/sqids/sqids-rust
Se você está procurando pelo Hashids Rust original, você pode encontrá-lo aqui: https://github.com/archer884/harsh
O principal uso de Sqids é puramente visual. Se você deseja usar IDs em vez de números em seu projeto, Sqids pode ser uma boa escolha.