- Sqids é uma biblioteca open source que gera IDs no estilo do YouTube a partir de números
- Os IDs gerados são curtos, podem ser criados com um alfabeto personalizado e têm ausência de colisões garantida
- Um exemplo de ID fornecido tem o formato
https://example.com/Lqj8a0
Por que usar Sqids
- O principal objetivo do Sqids é o efeito visual
- Se você quiser usar IDs em vez de números em um aplicativo web, o Sqids pode ser uma boa escolha
- Casos de uso incluem encurtamento de links, uso seguro em URLs, IDs de eventos, codificação/decodificação sem colisões e senhas de uso único
- Não é adequado para dados sensíveis e, se usado como ID de usuário, pode expor a quantidade de usuários
Características do Sqids
- Gera IDs curtos a partir de números não negativos
- É fácil de codificar e decodificar
- Os IDs gerados automaticamente não incluem palavrões comuns
- Suporta embaralhamento de alfabeto para IDs personalizados
- Suporta 40 linguagens de programação, das quais 15 usam o novo design
- Gera os mesmos IDs em todas as versões
- Tem tamanho de biblioteca pequeno e uma licença permissiva
Opinião do GN⁺
- A biblioteca Sqids é útil para desenvolvedores que querem usar IDs curtos e sem colisões em vez de números em aplicativos web
- A biblioteca oferece IDs visualmente atraentes e tem alta acessibilidade por oferecer suporte a várias linguagens de programação
- Ela oferece oportunidades vantajosas para desenvolvedores open source e tem os direitos autorais protegidos pela licença MIT
6 comentários
Bom para dificultar crawling.
Você poderia explicar um pouco melhor como isso pode ser usado para impedir rastreamento?
Se a URL for simplesmente
posts/1,posts/2,posts/3, os rastreadores vão colocando 1, 2, 3, 4, 5... e varrendo tudo.Se a URL for algo como
posts/L12Qsd,posts/dei24A, parece que eles não conseguem fazer isso.Ah! Obrigado pela resposta.
Fiquei curioso sobre qual seria a diferença em relação ao hashids, então fui pesquisar e, ao acessar https://hashids.org, ele redireciona para https://sqids.org/. Parece que mudaram o nome.
https://sqids.org/faq#hashids
Opiniões do Hacker News
Possibilidade de obter insights de negócio sobre empresas que usam IDs sequenciais
uulidsenquanto aguardam a adoção ampla do UUID v7Dúvida sobre a menção a códigos de acesso de uso único
Frustração por não conseguir formatar inteiros de 128 bits ou arrays de bytes
Em aplicações Ruby, usam um método de conversão para bases altas
A filtragem de palavrões pode ser um passivo por definição
Preferência por usar
nanoide um dicionário de caracteres segurosDiscussão sobre o uso de strings geradas aleatoriamente
Confusão sobre o fornecimento de links para 40 linguagens na seção "Get Started"
Pergunta sobre como ajustar ou evoluir a blocklist
Muitas pessoas neste tópico mencionam isso como uma boa forma de ocultar insights em IDs/números