Кодувальник / декодувальник Base62
Текст
Base62
Технічні деталі
Як працює кодувальник / декодувальник Base62
Що робить інструмент
Base62 кодує двійкові дані, використовуючи 62 буквено-цифрові символи (0-9, A-Z, a-z), і декодує рядки Base62 назад у текст або hex. Вихід містить лише URL-безпечні символи без заповнення, без символів '+', '/' або '=', тож його можна вбудовувати безпосередньо в URL-адреси та параметри запиту без percent-encoding.
Поширені сценарії використання для розробників
Сервіси скорочення URL (bit.ly, t.co, історично goo.gl) використовують Base62, щоб кодувати зростальні цілочисельні ID у компактні, зручні для поширення слаги. Бекенд-розробники генерують короткі непрозорі ідентифікатори для соціальних дописів, твітів і завантажених ресурсів. Маркетологи відстежують кампанії за допомогою UTM-параметрів, закодованих Base62, які виглядають охайніше, ніж Base64.
Формати даних, типи або варіанти
Інструмент використовує найпоширеніший порядок алфавіту Base62: цифри 0-9, потім великі літери A-Z, потім малі a-z. Різні реалізації можуть використовувати інші порядки (деякі ставлять малі літери перед великими), тож завжди перевіряйте сумісність алфавіту перед обміном закодованими даними між системами. Вивід показується як для тексту UTF-8, так і для необробленого hex-вводу байтів.
Поширені помилки та крайові випадки
Base62 не стандартизований — порядок алфавіту відрізняється між бібліотеками (цей інструмент використовує 0-9, A-Z, a-z, що відповідає npm-конвенції `base-x`). Початкові нульові байти в двійкових даних зберігаються кодувальником, але рядок Base62, що починається з '0', декодується до того самого значення, що й рядок без нього — канонічної форми немає. Для взаємодії між мовами задокументуйте точний алфавіт, який ви використали.
Коли використовувати цей інструмент, а коли — код
Використовуйте браузерний інструмент для одноразового кодування та декодування під час налагодження URL-слагів або коротких ID. У коді надавайте перевагу npm-пакету `base-x` (JavaScript), `pybase62` або власноруч написаному перетворенню (Python) чи Java-реалізаціям `Base62.io` — і завжди фіксуйте алфавіт у тестах, щоб майбутній рефакторинг не змінив кодування мовчки.