Tarayıcınız güncel değil

Bu siteyi görüntülemek için tarayıcınızın veya cihazınızın işletim sisteminin güncellenmesi gerekiyor.

Your browser is out of date. Please update iOS or your browser to view this site.

Naar hoofdinhoud springen
Gizke.com
Blog

URL-encoder & -parser

Werkt op je apparaat. Er wordt niets verstuurd.
Escapet elk gereserveerd teken. Gebruik dit voor een enkele waarde bestemd voor een query string of padsegment.

Het resultaat verschijnt hier

Codeer of decodeer URL's en query strings, of ontleed een volledige URL in zijn onderdelen en bewerk de query string live in een tabel - volledig in je browser.

Een URL mag veilig maar een beperkte set ASCII-tekens bevatten - al het andere, zoals een spatie, een ampersand of een niet-Latijnse letter, moet als %XX procentgecodeerd worden voordat het erin kan worden getransporteerd. Deze tool codeert en decodeert tekst volgens dezelfde regels die browsers gebruiken, en ontleedt daarnaast een volledige URL in protocol, host, poort, pad, query string en hash, zodat je de query-parameters in een tabel kunt bewerken en de URL live ziet worden herbouwd. Alles draait lokaal in je browser - er wordt nooit iets geüpload.

Veelgestelde vragen

Wat is procentcodering?
Procentcodering (ook wel URL-codering genoemd) vervangt een teken door % gevolgd door de tweecijferige hexadecimale waarde ervan, herhaald voor elke byte van de UTF-8-representatie. Zo kan een URL een spatie (%20), een ampersand (%26) of een emoji bevatten zonder dat die tekens worden verward met de syntaxis van de URL zelf.
Wat is het verschil tussen encodeURIComponent en encodeURI?
encodeURIComponent escapet alles behalve een kleine set niet-gereserveerde tekens, wat het de juiste keuze maakt voor één enkele waarde - een query-parameter of een padsegment - omdat het ook tekens als & en = escapet die anders als URL-structuur zouden worden gelezen. encodeURI is bedoeld voor een hele URL: het laat structurele tekens zoals :, /, ?, & en # ongemoeid zodat de URL blijft werken, en escapet alleen tekens die een URL echt niet mag bevatten, zoals spaties. Een hele URL door encodeURIComponent halen breekt hem, omdat dan ook de schuine strepen en dubbele punten worden geëscaped.
Moet ik escape() en unescape() nog gebruiken?
Nee. Beide werden al verouderd verklaard in de allereerste editie van de JavaScript-standaard die ook encodeURIComponent introduceerde, omdat escape() niet-ASCII-tekens niet codeert zoals HTTP en moderne URL's verwachten - het gebruikt voor alles buiten Latin-1 een niet-standaard %uXXXX-vorm die decodeURIComponent niet kan terugvertalen. Deze tool behoudt de optie alleen zodat je kunt inspecteren wat een legacysysteem heeft geproduceerd.
Waarom wordt een + in een query string een spatie?
Query strings komen van oudsher voort uit HTML-formulierinzendingen, die het formaat application/x-www-form-urlencoded gebruiken: het codeert een echte spatie als + in plaats van %20, en zowel de parser van deze tool als JavaScripts URLSearchParams behandelen beide bij het decoderen als een spatie. Als een waarde daadwerkelijk een letterlijk plusteken nodig heeft, moet dat zelf als %2B procentgecodeerd worden.
Wat gebeurt er met een herhaalde parameter zoals ?tag=a&tag=b?
Er gaat niets verloren - deze tool bewaart elk voorkomen, in volgorde, als een eigen rij in de tabel met query-parameters, precies zoals de meeste serverframeworks een herhaalde sleutel verzamelen in een lijst. Het bewerken of verwijderen van één rij laat de andere ongemoeid.
Waarom nam de parser https:// aan voor mijn URL?
Een string zoals example.com/pad heeft geen protocol, dus kunnen noch een browser noch deze tool weten of het een webadres is, bedoeld voor een ander protocol, of gewoon platte tekst. In plaats van hem af te wijzen, neemt de parser https:// aan zodat je hem alsnog kunt inspecteren en bewerken - er verschijnt telkens een hint wanneer dit gebeurt, en je kunt het veld Protocol corrigeren als een ander schema bedoeld was.

Deel deze tool

BlogOver onsContactGebruiksvoorwaardenPrivacybeleid