URL-parser
Ontleed elke URL in protocol, host, poort, pad, query en fragment — met IDN-punycode-decodering en query-pair-extractie. Draait volledig in je browser.
Wat is een URL-parser?
Een URL-parser splitst een Uniform Resource Locator in de gelabelde delen die RFC 3986 definieert: scheme, optionele userinfo, host (met optionele poort), pad, query en fragment. Elke browser, server, proxy, CDN en linkchecker doet dit intern voordat hij een request kan routeren of herschrijven. De ontleding expliciet zien maakt het makkelijk om coderingsbugs, foutgeplaatste schuine strepen, per ongeluk meegegeven credentials in URL's en IDN-homograph-aanvallen op te sporen.
Hoe gebruik je deze parser
Plak een URL in het vak. Het componenten-paneel werkt direct bij. Kijk naar de rij host om te zien of punycode in het spel is (een host die met xn-- begint, is IDN-gecodeerd), check de rij poort om te bevestigen of de URL de standaardpoort van het protocol gebruikt, en scan de tabel query-parameters om te zien welke sleutels en waarden bij de server aankomen. De rij genormaliseerde URL toont hoe de URL eruitziet nadat de parser van de browser hem heeft opgeruimd — hoofdletter-scheme verkleind, standaardpoort gestript, percent-codering opgeschoond.
Waarom fragmenten de server niet bereiken
Het fragment — het deel na # — is gereserveerd voor de user agent. Browsers strippen het voor het HTTP-request, daarom kan de server (en je access logs en de raw landingspagina-data van je analytics-tools) het niet zien. Single-page apps maken hier opzettelijk gebruik van om navigatie direct te laten voelen: route-wijzigingen werken het fragment bij in plaats van een echt netwerk-request te triggeren. Heb je een waarde nodig die de server moet bereiken, zet die dan in de query-string, niet in het fragment.
URL-anatomie
| Onderdeel | Voorbeeld | Rol |
|---|---|---|
protocol | https: | Vertelt de client welk protocol gesproken moet worden. |
host | shop.example.com | De server om verbinding mee te maken. Kan een domeinnaam of een IP-literal zijn. |
port | 8443 | TCP-poort. Standaard is 80 voor http, 443 voor https. |
path | /cart/checkout | Resource-pad op de server. Begint altijd met /. |
query | ?id=42&ref=hp | Optionele key/value-paren na de ?. |
fragment | #payment | Client-side anker na de #. Wordt nooit naar de server gestuurd. |
Veelgestelde vragen
Stuurt deze tool mijn URL's ergens naartoe?
URL-constructor van de browser; niets wordt geüpload. Open DevTools > Network — je ziet geen requests tijdens typen.Wat is punycode?
xn--mnchen-3ya.de. De parser toont beide vormen, zodat je homograph-aanvallen kunt herkennen waarbij een kwaadaardige host zich als een bekend merk vermomt.Waarom toont de parser userinfo als ik een URL met credentials plak?
Worden herhaalde query-keys behouden?
?tag=a&tag=b toont beide rijen. Hoe een server duplicaten interpreteert is framework-afhankelijk — PHP houdt standaard de laatste waarde, URLSearchParams in Node.js geeft een array terug. De parser ontdubbelt niet; hij toont wat er werkelijk in de URL staat.Wat wordt percent-gedecodeerd?
Kan ik mailto:- of tel:-URL's parsen?
URL-constructor van de browser accepteert. Voor mailto: staat het adres in het pad, headers als ?subject= verschijnen als query-parameters. Voor geavanceerdere mailto-bouw zie onze speciale mailto-link-generator.