102 votes

Générer des identifiants lisibles/utilisables, courts mais uniques

  • Besoin de gérer > 1000 mais < 10000 nouveaux enregistrements par jour

  • Impossible d'utiliser les GUID/UUID, les numéros d'incrémentation automatique, etc.

  • Idéalement, devrait contenir 5 ou 6 caractères, peut être alpha bien sûr

  • Souhaite réutiliser des algorithmes existants et bien connus, si disponibles

Quelque chose là-bas ?

22voto

Slawa Points 137

Je recommande http://hashids.org/ qui convertit n'importe quel nombre (par exemple, DB ID) en une chaîne (à l'aide de sel).

Il permet de décoder cette chaîne en nombre. Vous n'avez donc pas besoin de le stocker dans la base de données.

Possède des bibliothèques pour JavaScript, Ruby, Python, Java, Scala, PHP, Perl, Swift, Clojure, Objective-C, C, C++11, Go, Erlang, Lua, Elixir, ColdFusion, Groovy, Kotlin, Nim, VBA, CoffeeScript et pour Node.js & .NET.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X