Geen upload, 100% lokaal, geen account

URL-encoder/-decoder

Codeer speciale tekens in URL's, of decodeer percent-gecodeerde strings. Alles blijft in je browser.

Hoe URL-encoder/-decoder werkt

URL-encoder/decoder converteert strings naar en van procentcodering (ook wel URL-codering genoemd), het formaat dat vereist is door RFC 3986 voor het veilig opnemen van speciale tekens in URL's. Plak een onbewerkte string om hem te coderen, of plak een procentgecodeerde string om hem terug te decoderen naar leesbare vorm. De conversie wordt volledig in de browser uitgevoerd met encodeURIComponent en decodeURIComponent van JavaScript; niets dat je typt verlaat je apparaat.

URL-codering is van belang wanneer je queryparameters, omleidings-URI's of canonieke links programmatisch samenstelt. Een spatie wordt %20, een ampersand %26, een hekje %23, enzovoort. Codering is ook van toepassing op geïnternationaliseerde domeinnamen en niet-ASCII-tekens in padsegmenten. Dit hulpmiddel biedt ook de encodeURI-modus voor het coderen van volledige URI's met behoud van structurele tekens zoals '/', '?' en '#'.

Hoe je URL-encoder/-decoder gebruikt, stap voor stap

  1. Plak de tekst die je wilt coderen of decoderen in het invoergebied.
  2. Selecteer 'Coderen' om de tekst procentgewijs te coderen, of 'Decoderen' om de codering terug te draaien.
  3. Kies 'encodeURIComponent'-modus voor queryparameterwaarden, of 'encodeURI'-modus voor volledige URI's.
  4. Kopieer het resultaat uit het uitvoergebied.

Veelvoorkomende toepassingen

  • Een ontwikkelaar die een zoekverwijzings-URL bouwt, moet de querystring procentgewijs coderen zodat speciale tekens de URL-structuur niet verstoren.
  • Een API-integrator ontvangt een procentgecodeerde callback-URL in een webhookpayload en moet deze decoderen om het doeladres te verifiëren.
  • Een contentredacteur kopieert een URL met geaccentueerde tekens uit een browser en moet deze coderen voor gebruik in een Markdown-link.
  • Een QA-engineer test een invoervalidatie-eindpunt door grensTekens zoals '<', '>' en '&' te coderen voordat ze worden ingediend.

Veelgestelde vragen

Wat is het verschil tussen encodeURIComponent en encodeURI?

encodeURIComponent codeert alles behalve letters, cijfers en de tekens - _ . ! ~ * ' ( ). Het is bedoeld voor het coderen van afzonderlijke componenten zoals queryparameterwaarden. encodeURI laat structurele URI-tekens (: / ? # [ ] @ ! $ & ' ( ) * + , ; =) ongecodeerd omdat het ervan uitgaat dat de invoer een volledige URI is. Gebruik encodeURIComponent voor waarden, encodeURI voor volledige URL's.

Wordt de tekst die ik hier plak naar een server verzonden?

Nee. Het coderen en decoderen roept de ingebouwde functies encodeURIComponent en decodeURIComponent van JavaScript aan, die volledig in de JavaScript-engine van de browser draaien. Niets dat je hier typt, wordt ergens naartoe gestuurd.

Waarom wordt een spatie soms '+' in plaats van '%20'?

De '+'-notatie voor spaties komt van het oudere formaat application/x-www-form-urlencoded dat wordt gebruikt bij het indienen van HTML-formulieren, wat verschilt van RFC 3986-procentcodering. Dit hulpmiddel gebruikt strikte RFC 3986-procentcodering, dus spaties worden %20. Als je doelsysteem '+' verwacht voor spaties, moet je %20 handmatig vervangen door '+' na het coderen.

Kan ik een volledige URL inclusief de querystring in één keer coderen?

Ja, met de 'encodeURI'-modus. Die modus behoudt '/', '?', '=', '&', '#' en andere URL-structurele tekens terwijl niet-ASCII- en gereserveerde tekens die in segment- of parameterwaarden voorkomen worden gecodeerd. Gebruik 'encodeURIComponent' alleen op afzonderlijke parameterwaarden, niet de volledige URL.

Kan dit hulpmiddel omgaan met Unicode-tekens en emoji?

Ja. encodeURIComponent van JavaScript converteert het teken eerst naar de UTF-8-bytevolgorde en codeert vervolgens elke byte procentgewijs. Een emoji zoals 'duim omhoog' codeert naar een multi-byte-volgorde zoals %F0%9F%91%8D. Decodering keert het proces correct om.