Що таке Sqids?

Sqids - це бібліотека з відкритим вихідним кодом, яка дозволяє генерувати короткі унікальні ідентифікатори з чисел. Ці ідентифікатори безпечні для URL, можуть кодувати кілька чисел і не містять спільних нецензурних слів. Дізнатися більше .

Отак вони виглядають:

https://example.com/Lqj8a0

Швидкий приклад кодування та декодування:

sqids -e 1 2 3  # 86Rf07
sqids -d 86Rf07 # 1 2 3

Якщо ID занадто короткі, ви можете доповнити їх до певної довжини:

sqids -l 10 -e 1 2 3  # 86Rf07xd4z
sqids -d "86Rf07xd4z" # 1 2 3

Створіть унікальні ID, переставляючи алфавіт:

sqids -a "k3G7QAe51FCsPW92uEOyq4Bg6Sp8YzVTmnU0liwDdHXLajZrfxNhobJIRcMvKt" -e 1 2 3  # XRKUdQ
sqids -a "k3G7QAe51FCsPW92uEOyq4Bg6Sp8YzVTmnU0liwDdHXLajZrfxNhobJIRcMvKt" -d XRKUdQ # 1 2 3

Повна документація доступна на https://github.com/sqids/sqids-bash

Якщо ви шукаєте оригінальний Hashids Bash, ви можете знайти його тут: https://github.com/benwilber/bashids

Використання

Основне використання Sqids - це виключно візуальне. Якщо ви хочете використовувати ідентифікатори замість чисел у своєму проекті, Sqids може бути хорошим вибором.

Добре підходить для

  • Кодування основних ключів Якщо використовуєте реляційну базу даних
  • Економія запитів до бази даних Кодуючи кілька об'єктів
  • Тимчасові токени входу Без нецензурної лексики та безпечні для URL

Не підходить для

  • Чутлива інформація Це не бібліотека шифрування
  • Ідентифікатори користувачів Може розкрити кількість користувачів, якщо хтось дізнається алфавіт кодування

Функції

  • 🆔 Генерувати короткі ідентифікатори з не-від'ємних чисел
  • Просте кодування та декодування
  • 🫣 Автоматично згенеровані ідентифікатори не містять спільних нецензурних слів
  • 🎲 Підтримка власних ідентифікаторів через випадковий алфавіт
  • 🥳 44 інтеграцій (75% використовують новий дизайн)
  • 📌 Кожна версія генерує однакові ідентифікатори
  • 🍻 Невелика бібліотека з дозволеною ліцензією

Приклад / Майданчик