- Sqids est une bibliothèque open source qui génère des ID de style YouTube à partir de nombres
- Les ID générés sont courts, peuvent être créés avec un alphabet personnalisé et sont garantis sans collision
- L’exemple d’ID fourni prend la forme
https://example.com/Lqj8a0
Pourquoi utiliser Sqids
- L’objectif principal de Sqids est d’ordre visuel
- Si vous souhaitez utiliser des ID à la place de nombres dans une web app, Sqids peut être un bon choix
- Parmi les cas d’usage : raccourcissement de liens, utilisation sûre dans les URL, ID d’événements, encodage/décodage sans collision et mots de passe à usage unique
- Il n’est pas adapté aux données sensibles et, utilisé comme ID utilisateur, il peut révéler le nombre d’utilisateurs
Caractéristiques de Sqids
- Permet de générer des ID courts à partir de nombres non négatifs
- Encodage et décodage faciles
- Les ID générés automatiquement n’incluent pas d’insultes courantes
- Prend en charge le mélange de l’alphabet pour des ID personnalisés
- Prend en charge 40 langages de programmation, dont 15 utilisant le nouveau design
- Génère les mêmes ID sur toutes les versions
- Taille de bibliothèque réduite et licence permissive
Avis de GN⁺
- La bibliothèque Sqids est utile pour les développeurs qui veulent utiliser des ID courts et sans collision à la place de nombres dans une web app
- Cette bibliothèque fournit des ID visuellement attractifs et reste très accessible grâce à la prise en charge de nombreux langages de programmation
- Elle offre des opportunités intéressantes aux développeurs open source et protège les droits d’auteur grâce à la licence MIT
6 commentaires
Pratique pour empêcher le scraping.
Pourriez-vous expliquer un peu plus comment son utilisation permet d’empêcher le crawling ?
Si l’URL est simplement de la forme
posts/1,posts/2,posts/3, les crawlers essaient généralement d’y injecter1,2,3,4,5...pour les parcourir.En revanche, si l’URL est de la forme
posts/L12Qsd,posts/dei24A, ils ne peuvent pas le faire, donc j’imagine que c’est pour ça.Ah ! Merci pour votre réponse.
Je me demandais quelle était la différence avec hashids, alors j’ai cherché : si on saisit https://hashids.org, on est redirigé vers https://sqids.org/. On dirait qu’ils ont changé de nom.
https://sqids.org/faq#hashids
Avis sur Hacker News
Possibilité d’obtenir des insights business à partir d’entreprises qui utilisent des ID séquentiels
uulidsen attendant une adoption plus large de UUID v7Doute sur la mention des codes d’accès à usage unique
Déception de ne pas pouvoir formater des entiers 128 bits ou des tableaux d’octets
Dans les applications Ruby, utilisation d’une méthode de conversion vers une base élevée
Le filtrage des grossièretés peut être une contrainte de conception
Préférence pour l’utilisation de nanoid et d’un dictionnaire de caractères sûr
Discussion sur l’utilisation de chaînes générées aléatoirement
Confusion face à la présence, dans la section "Get Started", de liens vers 40 langages
Question sur la manière d’ajuster ou de faire évoluer la blocklist
Dans ce fil, beaucoup disent que c’est un bon moyen de masquer les insights tirés des ID/nombres