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:
local sqids = Sqids.new()
local encoded = sqids:encode({ 1, 2, 3 }) -- 86Rf07
local decoded = sqids:decode(encoded) -- 1, 2, 3
Se os IDs forem muito curtos, você pode preenchê-los até um certo comprimento:
local sqids = Sqids.new({
minLength = 10,
})
local encoded = sqids:encode({ 1, 2, 3 }) -- 86Rf07xd4z
local decoded = sqids:decode(encoded) -- 1, 2, 3
Crie IDs únicos embaralhando o alfabeto:
local sqids = Sqids.new({
alphabet = "k3G7QAe51FCsPW92uEOyq4Bg6Sp8YzVTmnU0liwDdHXLajZrfxNhobJIRcMvKt",
})
local encoded = sqids:encode({ 1, 2, 3 }) -- XRKUdQ
local decoded = sqids:decode(encoded) -- 1, 2, 3
A documentação completa está em https://github.com/sqids/sqids-lua
Se você está procurando pelo Hashids Lua original, você pode encontrá-lo aqui: https://github.com/leihog/hashids.lua
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.