MikroBI Robot Logo

MikroBI | DevKit

link

URL kódoló / dekódoló

Speciális karakterek és paraméterek biztonságos kódolása URL-ben való használatra, vagy visszafejtésük — teljesen a böngésződben.

Kapcsolódó eszközök

Az eszközről

Az URL-ek csak korlátozott karakterkészletet tudnak biztonságosan hordozni — betűket, számjegyeket és néhány írásjelet, mint a `-`, `_`, `.` és `~`. Minden más, beleértve a szóközöket, a `&`, `=`, `?`, `#` karaktereket, a perjeleket és a nem latin karaktereket, százalék-kódolással kell megjeleníteni: minden nem megengedett bájtot egy `%` és a kétjegyű hexadecimális értéke helyettesít, például a szóköz `%20` lesz. Ez az eszköz kódolja és dekódolja ezt a formát helyetted, hogy ne kelljen kézzel összeállítanod az escape-szekvenciákat.

A kódolás a böngésződ beépített `encodeURIComponent` függvényével történik, ugyanazzal, amelyet egy érték biztonságos beillesztésére használnak egy lekérdezési karakterláncba vagy útvonal-szegmensbe — minden olyan karaktert escapel, amelyet egyébként az URL szerkezete részének tekintenének, beleértve a `&` és `=` karaktereket is, ami pontosan az, amire szükséged van, ha az érték maga is tartalmazhatja őket (egy keresési kifejezés, egy átirányítási URL, egy felhasználói bemenet). A dekódolás megfordítja a folyamatot, és jelzi, ha a bemenet hibás százalék-kódolt szekvenciát tartalmaz, ahelyett hogy csendben hibás eredményt adna.

Ez folyamatosan felbukkan webalkalmazások fejlesztésekor vagy hibakeresésekor: egy szóközöket vagy szimbólumokat tartalmazó lekérdezési paraméter összeállításakor, egy nyers kéréslog olvasásakor, amikor a tényleges paraméterértékeket szeretnéd látni, egy másik URL-t magába ágyazó link megosztásakor (mint egy OAuth `redirect_uri` vagy egy `utm_*` követési érték), vagy annak kiderítésekor, hogy egy szerver miért kap egy paramétert a vártól eltérően, mert az duplán volt kódolva, vagy egyáltalán nem volt kódolva.

Minden a böngésződ natív kódolási primitíveivel, helyben történik — amit beírsz, az nem kerül sehova, és az eszköz az oldal betöltése után internetkapcsolat nélkül is tovább működik. Helyesen kezeli a Unicode karaktereket is, így az ékezetes betűk, nem latin írásrendszerek és emojik pontosan visszaalakulnak a bemenetben.

Válts a Kódolás és Dekódolás mód között a fenti kapcsolóval. Ha megvan az eredmény, másold ki közvetlenül, vagy használd a "Küldés" gombot, hogy átadd az eszköztár egy másik eszközének — hasznos például, ha egy dekódolt értéket Base64-be szeretnél kódolni, vagy a hosszát szeretnéd ellenőrizni.

Gyakran ismételt kérdések

Mi a különbség ez és egy teljes URL kódolása között? expand_more

Ez az eszköz egyetlen értéket kódol (például egy lekérdezési paramétert), hogy biztonságosan elhelyezhető legyen egy URL-ben — escapeli az olyan karaktereket, mint a `&`, `=` és `?`, amelyeknek szerkezeti jelentése van az URL-ben. Egy teljes, saját sémával és útvonallal rendelkező URL kódolása egy másik, kevésbé agresszív függvényt használ, amely érintetlenül hagyja ezeket a szerkezeti karaktereket.

Miért lesz a szóközből %20 vagy +? expand_more

A szóköz nem érvényes nyers URL karakter. A `%20` a mindenhol használt százalék-kódolt forma; a `+` egy régebbi konvenció, amely kifejezetten az `application/x-www-form-urlencoded` lekérdezési karakterláncokra jellemző. Ez az eszköz a `%20` formát használja, amely mindkét kontextusban érvényes.

Mi történik, ha érvénytelen bemenetet próbálok dekódolni? expand_more

Az eszköz felismeri a hibás százalék-kódolt szekvenciákat (például egy magányos `%` jelet, amelyet nem két hexadecimális számjegy követ), és hibát jelez, ahelyett hogy hibás eredményt adna.

Kezeli ez az eszköz az emojikat és a nem angol szöveget? expand_more

Igen. A kódolás és dekódolás a böngésző Unicode-tudatos primitívjein keresztül történik, így az ékezetes betűk, nem latin írásrendszerek és emojik helyesen alakulnak vissza.

Elhagyja az adatom a böngészőt? expand_more

Nem. A kódolás és dekódolás teljes egészében a saját eszközödön történik, és az eszköz offline állapotban is tovább működik az oldal betöltése után.