Kodirnik / dekodirnik Base62
Besedilo
Base62
Tehnične podrobnosti
Kako deluje kodirnik / dekodirnik Base62
Kaj orodje počne
Base62 kodira binarne podatke z uporabo 62 alfanumeričnih znakov (0-9, A-Z, a-z) in dekodira nize Base62 nazaj v besedilo ali hex. Izhod vsebuje samo znake, varne za URL, brez dopolnjevanja in brez simbolov '+', '/' ali '=', zato ga je mogoče neposredno vdelati v URL-je in parametre poizvedbe brez percent-enkodiranja.
Pogosti primeri uporabe za razvijalce
Krajšalniki URL-jev (bit.ly, t.co, goo.gl zgodovinsko) uporabljajo Base62 za kodiranje naraščajočih celoštevilskih ID-jev v kompaktne, za deljenje prijazne sluge. Razvijalci zaledja ustvarjajo kratke neprosojne identifikatorje za objave na družbenih omrežjih, tvite in naložena sredstva. Tržniki spremljajo kampanje z UTM parametri, kodiranimi z Base62, ki so videti čisteje kot Base64.
Podatkovni formati, tipi ali različice
Orodje uporablja najpogostejši vrstni red abecede Base62: števke 0-9, nato velike črke A-Z, nato male črke a-z. Različne implementacije lahko uporabljajo različne vrstne rede (nekatere postavijo male črke pred velike), zato pred deljenjem kodiranih podatkov med sistemi vedno preverite združljivost abecede. Izhod je prikazan tako za besedilo UTF-8 kot za surov hex vhod bajtov.
Pogoste pasti in robni primeri
Base62 ni standardiziran — vrstni red abecede se razlikuje med knjižnicami (to orodje uporablja 0-9, A-Z, a-z, kar se ujema s konvencijo npm `base-x`). Vodilni ničelni bajti v binarnih podatkih se pri kodiranju ohranijo, vendar se niz Base62, ki se začne z '0', dekodira v isto vrednost kot niz brez nje — kanonične oblike ni. Za interoperabilnost med jeziki dokumentirajte natančno abecedo, ki ste jo uporabili.
Kdaj uporabiti to orodje namesto kode
Uporabite orodje v brskalniku za enkratno kodiranje in dekodiranje med razhroščevanjem URL slugov ali kratkih ID-jev. V kodi raje uporabite npm paket `base-x` (JavaScript), `pybase62` ali ročno napisano pretvorbo (Python) ali Java implementacije `Base62.io` — in vedno pripnite abecedo v testih, da prihodnja refaktorizacija ne spremeni kodiranja neopazno.