Geavanceerde opties
Converteer + naar spaties
Wanneer ingeschakeld, worden +-tekens geconverteerd naar spaties. Dit is handig bij het decoderen van queryparameters.
Live-modus
Wanneer ingeschakeld, wordt de tekst automatisch gedecodeerd terwijl je typt.
Deze opties helpen je te bepalen hoe gecodeerde tekens in je URL's worden gedecodeerd.
Wat is URL-decodering?
URL-decodering keert procentcodering terug: het leest de %XX-escape-reeksen in een gecodeerde URL en zet ze terug naar de tekens die ze voorstellen. Zo haal je een leesbare querystring, formulierwaarde of padsegment terug uit een URL die een browser, API of logbestand je gecodeerd heeft aangeleverd.
Hoe werkt URL-decodering?
URL-decodering volgt een specifiek proces om procentgecodeerde reeksen terug om te zetten naar hun oorspronkelijke tekens:
- De invoerstring wordt gescand op procentgecodeerde escape-reeksen (%XX)
- Elke %XX wordt van zijn twee hexadecimale cijfers terug omgezet naar de oorspronkelijke bytewaarde
- Opeenvolgende gedecodeerde bytes worden weer samengevoegd tot UTF-8-tekens (een multibyte-reeks wordt één teken)
- In de context van een queryreeks wordt + gedecodeerd naar een spatie (application/x-www-form-urlencoded), terwijl %2B een letterlijke + blijft
- Niet-gereserveerde tekens en reeds gedecodeerde tekst gaan ongewijzigd door
Waarom een URL-decoder gebruiken?
- Leesbare uitvoer: zet %20, %40 en %3D terug naar spaties, @ en = zodat je kunt lezen wat een URL werkelijk zegt
- Internationale tekst: herstel geaccentueerde en niet-ASCII-tekens uit hun UTF-8-byte-reeksen, zodat %C3%A9 weer gelezen wordt als é
- Debuggen: inspecteer de echte waarden in een querystring, OAuth-redirect of webhook-payload voordat je er actie op onderneemt
- Standaardconform: decodeer op basis van RFC 3986 — dezelfde regels die browsers en servers gebruiken — zodat je precies ziet wat zij zien
Wat zijn veelvoorkomende toepassingen van URL-decodering?
URL-decodering is essentieel in veel scenario's van webontwikkeling:
- Formulierinzendingen: de originele veldwaarden teruggelezen uit application/x-www-form-urlencoded GET- en POST-data
- API-ontwikkeling: procentgecodeerde pad- en queryparameters uitpakken die bij een API-eindpunt binnenkomen
- Bestandssystemen: bestandspaden en -namen herstellen die procentgecodeerd waren om in een URL te reizen
- Links debuggen: gedeelde of gelogde URL's decoderen om de speciale tekens en internationale tekst te zien die ze bevatten
Hoe ziet een voorbeeld van URL-decodering eruit?
Hier zijn enkele veelvoorkomende voorbeelden van URL-decodering: %20 (of +) wordt een spatie, %40 wordt @, %23 wordt #, %26 wordt &, en %3D wordt =. Een UTF-8-reeks zoals %C3%A9 wordt het internationale teken é.
Wat is percent-codering?
Percent-codering is het in RFC 3986 §2.1 gedefinieerde mechanisme om tekens te representeren die binnen een URI onveilig of gereserveerd zijn. De regel is mechanisch: elke byte die niet letterlijk mag voorkomen wordt geschreven als een procentteken gevolgd door twee hexadecimale cijfers — de %XX-vorm —, waarbij XX de waarde van de byte is. Niet-ASCII-tekens zoals é worden eerst gecodeerd als hun UTF-8 bytesequentie, en daarna wordt elke byte afzonderlijk percent-gecodeerd. Ontwikkelaars komen dit bijna dagelijks tegen: in query-strings, formulierinzendingen, OAuth-callback-URL's, REST-API padparameters en overal waar een URL leestekens, spaties of tekens buiten de niet-gereserveerde set A–Z a–z 0–9 - _ . ~ moet meedragen.
Hoe werkt het decoderen van %C3%A9 naar é eigenlijk?
Neem de gecodeerde query-string ?q=caf%C3%A9&lang=fr. Decoderen levert ?q=café&lang=fr op. Hier is de byte-voor-byte uitleg:
- Invoer:
?q=caf%C3%A9&lang=fr - Uitvoer:
?q=café&lang=fr
%C3→ byte0xC3(binair11000011) — de leidende byte van een UTF-8 sequentie van 2 bytes.%A9→ byte0xA9(binair10101001) — de vervolgbyte. Samen isC3 A9de UTF-8-codering van U+00E9, oftewelé.- De tekens
?,=en&blijven onaangeroerd omdat ze structureel zijn — ze begrenzen de query en de bijbehorende sleutel/waarde-paren. Ook het letterlijkecafwordt onveranderd doorgegeven, omdat ASCII-kleine letters tot de niet-gereserveerde set behoren.
Wat is het verschil tussen decodeURIComponent en decodeURI?
JavaScript biedt twee ingebouwde decoders, en deze door elkaar halen is een van de meest voorkomende fouten bij URL-verwerking:
decodeURIComponent(str)decodeert elke percent-gecodeerde sequentie, inclusief gereserveerde tekens zoals&,=,?,/en#. Gebruik het op individuele query-string-waarden of padsegmenten — nooit op een volledige URL.decodeURI(str)is bewust voorzichtig: het slaat gereserveerde tekens over. Als je%26doorgeeft, krijg je de letterlijke string%26terug, niet&. Het is bedoeld voor volledige URI's waarbij je wilt dat de structuur een heen-en-terugreis overleeft.
Vuistregel: als de string een stuk van een URL is (een enkele parameter, een fragment, een gecodeerde bestandsnaam), grijp dan naar decodeURIComponent. Deze tool gedraagt zich als decodeURIComponent — elke %XX-sequentie in je invoer wordt gedecodeerd, inclusief gereserveerde tekens.
Een URL decoderen is hoe je leest wat er echt in zit. Plak hierboven een gecodeerde string en elke %XX-reeks keert direct in je browser terug naar zijn teken — zo kun je een queryparameter debuggen, een OAuth-redirect controleren of een geaccentueerde bestandsnaam terughalen zonder iets naar een server te sturen.