URL kodirnik/dekodirnik + HTML entitete

Kodirajte URL-je, dekodirajte odstotkovno kodiranje in pretvorite HTML entitete.

Orodje
Dejanje
Obseg URL
Vnos
Izhod
Pripravljeno. Prilepite besedilo in izberite dejanje.

Vaš URL in HTML besedilo se pretvorita v vašem brskalniku. Nič se ne prenaša na BroBroGo.

Pogosta vprašanja

Naj izberem komponento URL ali celoten URL?

Možnost 'Komponenta' uporabite za vrednosti poizvedb, dele poti ali vrednosti obrazcev. Možnost 'Celoten URL' uporabite, ko želite ohraniti znake, kot so : / ? & = berljive.

Kaj spremeni kodiranje HTML entitet?

Znake, kot so <, >, &, narekovaji in ne-ASCII besedilo, spremeni v entitete, ki jih je mogoče varno prilepiti v HTML besedilo ali atribute.

Zakaj dekodiranje URL-ja včasih ne uspe?

Kodiranje z odstotki (%) mora predstavljati celotna zaporedja UTF-8. Pokvarjenega zaporedja, kot je %E0%A4%A, ni mogoče dekodirati brez ugibanja.

Spletni razvijalci, uredniki vsebin in tehnična podpora se pri vsakodnevnem delu pogosto srečujejo s potrebo po varnem vstavljanju besedila v spletne naslove ali izvorno kodo HTML. Orodje "URL kodirnik/dekodirnik + HTML entitete" omogoča pretvorbo besedila z iskanjem ustreznih kodirnih shem za spletne protokole in označevalne jezike. Celoten postopek pretvorbe se izvaja lokalno, saj se vaš URL in HTML besedilo pretvorita v vašem brskalniku. Nič se ne prenaša na BroBroGo, kar zagotavlja zasebnost vaših podatkov med obdelavo.

Namen in delovanje URL kodiranja in dekodiranja

URL kodiranje, znano tudi kot odstotkovno kodiranje (percent-encoding), je mehanizem za pretvorbo poljubnih podatkov v obliko, ki jo je mogoče varno prenašati prek protokola HTTP. Spletni naslovi lahko namreč vsebujejo le omejen nabor znakov iz sheme US-ASCII. Vsi ostali znaki, vključno s presledki, ne-ASCII znaki (kot so šumniki ali kitajske pismenke) in nekaterimi rezerviranimi znaki, morajo biti kodirani.

Odstotkovno kodiranje deluje tako, da se znak pretvori v njegovo bajtno zaporedje v kodiranju UTF-8, vsak bajt pa se nato zappiše kot znak %, ki mu sledi dvomestna šestedesetiška (heksadecimalna) vrednost. Na primer, presledek se kodira kot %20, znak & kot %26, znak = pa kot %3D.

Pri dekodiranju poteka obraten postopek: orodje prepozna odstotkovne zapise in jih pretvori nazaj v izvirne znake UTF-8. To je ključno za branje obstoječih kodiranih naslovov ali analizo parametrov, ki jih pošiljajo spletni obrazci.

Razlika med kodiranjem komponente in celotnega URL-ja

Pri delu s spletnimi naslovi je ključno razlikovati med kodiranjem posameznega dela naslova in kodiranjem celotne strukture URL. Orodje zato ponuja izbiro obsega pretvorbe:

  • Komponenta: Ta možnost uporablja JavaScript funkcijo encodeURIComponent za kodiranje oziroma decodeURIComponent za dekodiranje. Namenjena je kodiranju vrednosti poizvedb, delov poti ali vrednosti obrazcev. V tem načinu se kodirajo tudi znaki, kot so :, /, ?, & in =, saj bi ti znaki sicer prekinili strukturo celotnega URL-ja, če bi jih vstavili kot del parametra.
  • Celoten URL: Ta možnost uporablja funkcijo encodeURI oziroma decodeURI. Uporablja se takrat, ko želite ohraniti znake, kot so :, /, ?, & in = berljive, saj ti znaki določajo sintakso samega protokola, domene in parametrov znotraj celotnega spletnega naslova.
Znak Kodiranje komponente (encodeURIComponent) Kodiranje celotnega URL-ja (encodeURI)
/ %2F /
? %3F ?
& %26 &
= %3D =
: %3A :

HTML entitete in njihovo ubežanje

HTML entitete rešujejo drugačno težavo kot URL kodiranje. V jeziku HTML imajo nekateri znaki poseben pomen. Znak < označuje začetek oznake (tag), znak > označuje konec oznake, znak & pa napoveduje začetek same entitete. Če želite te znake varno prikazati kot navadno besedilo v brskalniku, ne da bi jih brskalnik interpretiral kot kodo HTML, jih morate pretvoriti v ubežne sekvence oziroma HTML entitete.

Ubežanje HTML entitet (HTML entity escaping) pretvori znake, kot so <, >, &, narekovaji in ne-ASCII besedilo, v entitete, ki jih je mogoče varno prilepiti v HTML besedilo ali atribute. Na primer:

  • Znak < postane &lt;
  • Znak > postane &gt;
  • Znak & postane &amp;

Ko izberete način za HTML entitete, se nadzorni element za obseg URL-ja samodejno skrije, saj koncept celotnega URL-ja ali komponente pri obdelavi HTML kode ni relevanten.

Pravila pretvorbe in obravnava napak

Orodje deluje po strogih pravilih za zagotavljanje tehnične pravilnosti podatkov. Pri delu z njim veljajo naslednje omejitve in pravila za izjemna stanja:

  • Omejitev velikosti: Največja dovoljena dolžina vhodnega besedila je 2.000.000 znakov. Če vnesete večje število znakov, se izpiše opozorilo: "Ta vnos je predolg za to orodje. Naj bo krajši od {max} znakov.".
  • Nepopolna zaporedja: Pri dekodiranju URL-jev morajo biti odstotkovni zapisi del popolnih UTF-8 zaporedij. Če vnesete nepopolno ali pokvarjeno zaporedje, kot je %E0%A4%A, dekodiranje ni mogoče, orodje pa javiti napako: "To URL besedilo vsebuje nepopolno kodiranje z odstotki.".
  • Časovna omejitev: Če je vnos prevelik ali prezahteven in pretvorba traja predolgo, se prikaže sporočilo: "Pretvorba traja predolgo. Poskusite z manjšim vnosom.".
  • Splošna napaka: V primeru drugih nepredvidenih težav pri pretvorbi se izpiše: "Tega vnosa ni bilo mogoče pretvoriti.".
  • Prazno polje: Če poskusite zagnati pretvorbo brez vnesenega besedila, vas orodje opozori s sporočilom: "Najprej prilepite vnos.".

Orodje ponuja tudi pomožne funkcije za upravljanje vmesnika. S klikom na gumb za brisanje se izpiše "Vnos in izhod sta počiščena.". Če želite rezultat pretvorbe uporabiti za nadaljnjo obdelavo, lahko uporabite funkcijo za prenos izhoda v vnos, kar potrdi sporočilo "Izhod je bil premaknjen v vnos.". Naložitev testnih podatkov pa pospremi obvestilo "Primer je naložen.".

Razlika med kodiranjem in varnostnim čiščenjem

Pomembno je razumeti razliko med kodiranjem oziroma ubežanjem znakov in varnostnim čiščenjem (sanitization).

Kodiranje URL-jev in ubežanje HTML entitet sta namenjena izključno tehnični pretvorbi podatkov, da so ti skladni s sintakso protokolov in formatov. Ti postopki ne odstranjujejo zlonamerne kode in ne preverjajo varnostne neoporečnosti vnosov. Varnostno čiščenje je ločen proces, pri katerem se iz besedila aktivno odstranjujejo nevarni elementi (na primer skripte pri napadih XSS), medtem ko kodiranje le poskrbi, da se vsi znaki pravilno prenesejo in izrišejo v brskalniku.

Pogosta vprašanja (FAQ)

Naj izberem komponento URL ali celoten URL?

Možnost 'Komponenta' uporabite za vrednosti poizvedb, dele poti ali vrednosti obrazcev. Možnost 'Celoten URL' uporabite, ko želite ohraniti znake, kot so: /? & = berljive.

Kaj spremeni kodiranje HTML entitet?

Znake, kot so <, >, &, narekovaji in ne-ASCII besedilo, spremeni v entitete, ki jih je mogoče varno prilepiti v HTML besedilo ali atribute.

Zakaj dekodiranje URL-ja včasih ne uspe?

Kodiranje z odstotki (%) mora predstavljati celotna zaporedja UTF-8. Pokvarjenega zaporedja, kot je %E0%A4%A, ni mogoče dekodirati brez ugibanja.

Ali se moji podatki pošiljajo na strežnik?

Ne. Vaš URL in HTML besedilo se pretvorita v vašem brskalniku, zato se nič ne prenaša na BroBroGo.