Ga naar de hoofdinhoud

Een tekenreeks URL-coderen

Procentcodering vervangt elk teken dat niet veilig is in een URL door % gevolgd door de hexadecimale waarde van elk van zijn UTF-8-bytes. De modus Component, die encodeURIComponent() gebruikt, is de juiste keuze voor één querywaarde of padsegment.

Uitgewerkt voorbeeld

TekenUTF-8-bytesComponent
␠%20%20
&%26%26
=%3D%3D
/%2F%2F
?%3F%3F
é%C3 %A9%C3%A9
😀%F0 %9F %98 %80%F0%9F%98%80

De modus Component codeert de hele zin tot één veilige waarde.

Invoer
rock & roll/size=XL? café 😀
Resultaat · encodeURIComponent()
rock%20%26%20roll%2Fsize%3DXL%3F%20caf%C3%A9%20%F0%9F%98%80

De modus Volledige URL laat & = / ? ongemoeid; gebruik hem dus alleen voor een complete URL.

Invoer
rock & roll/size=XL? café 😀
Resultaat · encodeURI()
rock%20&%20roll/size=XL?%20caf%C3%A9%20%F0%9F%98%80

Zo pakt de tool het aan

  • Letters A–Z en a–z, cijfers 0–9 en - _ . ! ~ * ' ( ) worden nooit gewijzigd.
  • Elk ander teken wordt omgezet in UTF-8-bytes en elke byte wordt geschreven als % plus twee hexadecimale cijfers in hoofdletters: é is twee bytes, de meeste emoji zijn vier bytes.
  • De modus Component codeert ook de gereserveerde tekens : / ? # [ ] @ & = + $ , ; zodat ze de structuur van de URL niet kunnen veranderen.

Handleidingen voor URL-codering