URL-parser
Bryd enhver URL ned i protokol, vært, sti, query-parametre og hash
URL
Komponenter
Hvad er URL-parseren?
Indsæt en URL, og værktøjet bryder den ned i de dele, du faktisk er optaget af — protokol, vært, port, sti, query-parametre, hash. Outputtet er JSON, så du kan kopiere det direkte ind i en testfixture, en debug-log eller hvor som helst, du har brug for komponenterne i struktureret form. Parseren følger WHATWG URL Standard, som enhver moderne browser bruger internt.
Hvorfor en parser? Fordi det er en plage at læse en lang URL med fem procent-kodede query-parametre og et hash-fragment. Browseren kan allerede gøre det her via URL API, men du har ikke en hurtig indsæt-og-se-flade til det. Det er det her. Query-parametre bliver også afkodet — %20 bliver til mellemrum, %5B bliver til [, gentagne nøgler bliver til et array — samme adfærd som URLSearchParams.
Det hele kører i din browser. Ingen upload, ingen server, ingen logs. URL-parsing er deterministisk — ingen AI, intet gætteri, blot den samme algoritme, som RFC 3986 definerede, og som WHATWG-specifikationen har finpudset.
Sådan bruger du URL-parseren
Tre trin. Hvert af dem matcher en knap på siden.
Indsæt en URL eller indlæs eksemplet
Smid en URL ind i venstre panel. Klik på Eksempel for at indlæse et realistisk tilfælde med procent-kodning, gentagne query-nøgler og hash-fragment. Eksempel-URL:
https://api.shop.example.com/v1/orders?customer=Ava%20Chen&status=active&total%5Bgte%5D=49.99&page=2#summaryAlt, hvad URL-konstruktøren accepterer, fungerer — herunder <code>file://</code>, <code>mailto:</code>, brugerdefinerede skemaer, IPv6-værter og userinfo (<code>user:pass@host</code>).
Læs komponenterne
Højre panel viser den parsede URL som JSON: protocol, host, port, pathname, pathSegments (stien delt op i et array), searchParams (afkodede nøgle-værdi-par, med arrays for gentagne nøgler) og hash. Opdaterer mens du skriver.
Kopiér eller download
Klik på Kopiér for at sende JSON til udklipsholderen, eller Download for at gemme det som en .json-fil. Minificér presser JSON sammen på én linje, hvis du har brug for det til en loglinje. Brug Ryd i input-panelet for at starte forfra.
Hvornår du faktisk vil bruge det her
Debug af redirects og analytics-URL'er
En URL med tolv query-parametre fra et reklame-tracking-redirect er ulæselig i adressefeltet. Indsæt den her for at se parametrene én pr. linje, afkodet, med destinations-url-parameteren fuldt pakket ud. Passer godt sammen med fjernelse af trackers i vores URL Cleaner (når den lander).
Inspicer webhook- og OAuth-callback-URL'er
OAuth-callbacks og webhook-payloads propper tilstand ind i query-strengen. At splitte den op gør det åbenlyst, om state-tokenet mangler, om code blev hugget af, eller om redirect_uri er kodet to gange. RFC 6749 kræver de parametre, og det her bringer dem alle frem på én gang.
Bygge testfixtures
Når du skriver tests mod en URL, vil du som regel have den som et struktureret objekt, ikke en streng. Indsæt URL'en, kopiér JSON, smid det ind i din fixture-fil. Sparer dig for at skrive protocol: 'https:' i hånden for femte gang i dag.
Sanity-tjek på supportbilletter
"Det gik i stykker, da jeg klikkede på det her link" — linket er 400 tegn langt med dobbeltkodede skråstreger. Parseren viser præcis det, browseren ville se, herunder om %252F betyder et bogstaveligt %2F eller en sti-separator, der blev kodet to gange undervejs gennem en proxy.
Ofte stillede spørgsmål
Virker det med relative URL'er?
Nej — URL-konstruktøren har brug for en absolut URL (med en protokol som https:// eller file://). For relative URL'er, sæt først en base som https://example.com foran, og fjern den så fra resultatet. WHATWG-specifikationen beskriver to-argument-formen (new URL(relative, base)), som browsere bruger internt.
Hvordan håndterer den gentagne query-nøgler?
Gentagne nøgler kollapses til et array. Så ?tag=red&tag=blue bliver til "tag": ["red", "blue"] i outputtet. Det matcher, hvordan de fleste server-frameworks (Express, FastAPI, ASP.NET) parser query-strenge.
Og array-firkant-parentes-notation som ?items[]=1&items[]=2?
Parseren behandler firkantparenteserne som en del af nøglen — så du vil se "items[]": ["1", "2"]. Det er ærligt over for bytes på ledningen. Hvis du har brug for en framework-specifik decoder (PHP, Rails, qs.js), så lav efterbehandlingen på det parsede output.
Er det sikkert at indsætte loginoplysninger i URL'er (user:pass@host) her?
Parsningen foregår fuldt ud i din browser — URL'en forlader aldrig din maskine. Når det er sagt, frarådes det generelt at lægge loginoplysninger i en URL (RFC 3986 §3.2.1 nævner sikkerhedsrisiciene), og de fleste browsere fjerner dem stille og roligt. Indsætter du alligevel en, vil felterne username og password dukke op i outputtet.
Kan den håndtere internationaliserede domænenavne (IDN)?
Browserens URL-konstruktør håndterer IDN-domæner, men outputtet kan vise Punycode-formen (xn--...) i stedet for Unicode-formen. Sådan ville URL'en faktisk blive sendt over ledningen. Skal du konvertere mellem de to, kommer der snart et dedikeret Punycode-værktøj i denne sektion.
Hvorfor hedder outputtet "Komponenter" i stedet for "JSON"?
Det ER JSON — men indrammingen betyder noget. Outputtet er URL'ens dele, struktureret. Hvis du opfatter siden som en "URL → JSON-konverter", går du glip af pointen: værdien ligger i opdelingen, ikke i formatet.
Andre URL- og JSON-værktøjer
Parsing er én operation. Her er, hvad der falder naturligt sammen med det: