Sqids - це бібліотека з відкритим вихідним кодом, яка дозволяє генерувати короткі унікальні ідентифікатори з чисел. Ці ідентифікатори безпечні для URL, можуть кодувати кілька чисел і не містять спільних нецензурних слів. Дізнатися більше .
Отак вони виглядають:
Швидкий приклад кодування та декодування:
let sqids = Sqids.make () in
let id = Sqids.encode sqids [1; 2; 3] in (* "86Rf07" *)
let numbers = Sqids.decode sqids id in (* [1; 2; 3] *)
Якщо ID занадто короткі, ви можете доповнити їх до певної довжини:
let sqids = Sqids.make ~min_length:10 () in
let id = Sqids.encode sqids [1; 2; 3] in (* "86Rf07xd4z" *)
let numbers = Sqids.decode sqids id in (* [1; 2; 3] *)
Створіть унікальні ID, переставляючи алфавіт:
let sqids = Sqids.make ~alphabet:"k3G7QAe51FCsPW92uEOyq4Bg6Sp8YzVTmnU0liwDdHXLajZrfxNhobJIRcMvKt" () in
let id = Sqids.encode sqids [1; 2; 3] in (* "XRKUdQ" *)
let numbers = Sqids.decode sqids id in (* [1; 2; 3] *)
Повна документація доступна на https://github.com/sqids/sqids-ocaml
Якщо ви шукаєте оригінальний Hashids OCaml, ви можете знайти його тут: https://github.com/jacquev6/hashids-ocaml
Основне використання Sqids - це виключно візуальне. Якщо ви хочете використовувати ідентифікатори замість чисел у своєму проекті, Sqids може бути хорошим вибором.