Hoe URL's te coderen en te decoderen

· 3 min leestijd

Als u ooit %20 in een URL hebt gezien waar een spatie zou moeten staan, of %C3%A9 waar een geaccentueerd teken op zijn plaats was, hebt u URL-codering ontmoet. Het is een fundamentele bouwsteen van het web, en het begrijpen ervan helpt om gebroken links, API-problemen en formulierinzendingen te debuggen.

Wat URL-codering doet

URL's mogen alleen een beperkte set van veilige tekens bevatten: letters (A-Z, a-z), cijfers (0-9) en enkele speciale tekens (-, _, ., ~). Al het andere — spaties, accenten, emoji, symbolen zoals &, =, #, ? — moet worden geconverteerd naar een veilig formaat.

URL-codering (ook wel percent-encoding genoemd) vervangt onveilige tekens door een % gevolgd door hun hexadecimale byte-waarde:

Teken Gecodeerd
Spatie %20
& %26
= %3D
# %23
? %3F
/ %2F
@ %40

Wanneer URL-codering nodig is

Hoe te coderen en te decoderen

  1. Kies coderen of decoderen — selecteer de richting. Gebruik encodeURIComponent voor queryparameters of encodeURI voor volledige URL's.
  2. Plak uw invoer — voer de tekst of URL in. Het resultaat wordt direct bijgewerkt.
  3. Kopieer de uitvoer — gebruik het resultaat in uw code, uw API-aanvraag of uw browser.

Tips

Veelgestelde vragen

Wat is het verschil tussen encodeURI en encodeURIComponent?

encodeURI behoudt geldige tekens in een URL-structuur (schuine strepen, dubbele punten, vraagtekens). encodeURIComponent codeert alles behalve letters, cijfers en enkele veilige tekens. Gebruik encodeURIComponent voor queryparameter-waarden, encodeURI voor volledige URL's.

Waarom worden spaties %20 of +?

In URL-codering worden spaties %20. In formuliergegevens (application/x-www-form-urlencoded) worden spaties +. Beide zijn geldig in hun contexten, maar %20 is de universele standaard voor URL's.

Moet ik mijn URL's handmatig coderen?

In de meeste gevallen zorgt uw taal of framework automatisch voor de codering. Handmatige codering is nuttig wanneer u URL's met de hand opbouwt, API-aanvragen debugt of werkt met querystrings die speciale tekens bevatten.

Worden mijn gegevens naar een server verzonden?

Nee. Alle codering en decodering vindt plaats in uw browser.