Sqids es una biblioteca de código abierto que te permite generar identificadores cortos únicos a partir de números. Estos IDs son seguros para URL, pueden codificar varios números y no contienen palabras malsonantes comunes. Leer más .
Así es cómo lucen:
Ejemplo rápido de codificación y decodificación:
local sqids = Sqids.new()
local encoded = sqids:encode({ 1, 2, 3 }) -- 86Rf07
local decoded = sqids:decode(encoded) -- 1, 2, 3
Si los IDs son muy cortos, puedes rellenarlos hasta cierta longitud:
local sqids = Sqids.new({
minLength = 10,
})
local encoded = sqids:encode({ 1, 2, 3 }) -- 86Rf07xd4z
local decoded = sqids:decode(encoded) -- 1, 2, 3
Crea IDs únicos al barajar el alfabeto:
local sqids = Sqids.new({
alphabet = "k3G7QAe51FCsPW92uEOyq4Bg6Sp8YzVTmnU0liwDdHXLajZrfxNhobJIRcMvKt",
})
local encoded = sqids:encode({ 1, 2, 3 }) -- XRKUdQ
local decoded = sqids:decode(encoded) -- 1, 2, 3
La documentación completa está en https://github.com/sqids/sqids-lua
Si estás buscando el Hashids Lua original, puedes encontrarlo aquí: https://github.com/leihog/hashids.lua
El uso principal de Sqids es puramente visual. Si prefieres usar IDs en lugar de números en tu proyecto, Sqids podría ser una buena elección.