URL

Komponenter

Vad är URL-parsern?

Klistra in en URL så bryter verktyget upp den i de delar du faktiskt bryr dig om — protokoll, värd, port, sökväg, query-parametrar, hash. Utdata är JSON, så du kan kopiera den direkt in i en testfixture, en debug-logg eller var du nu behöver komponenterna i strukturerad form. Parsern följer WHATWG URL-standarden, vilket är vad varje modern webbläsare använder internt.

Varför en parser? För att läsa en lång URL med fem procent-kodade query-parametrar och ett hash-fragment är jobbigt. Webbläsaren kan redan göra det här via URL API, men du har ingen snabb klistra-och-se-yta för det. Det här är den. Query-parametrar avkodas också — %20 blir ett mellanslag, %5B blir [, upprepade nycklar blir en array — samma beteende som URLSearchParams.

Allt körs i din webbläsare. Ingen uppladdning, ingen server, inga loggar. URL-parsing är deterministiskt — ingen AI, ingen gissning, bara samma algoritm som RFC 3986 definierade och WHATWG-specen finslipade.

Så använder du URL-parsern

Tre steg. Vart och ett matchar en knapp på den här sidan.

1

Klistra in en URL eller ladda exemplet

Släpp en URL i den vänstra panelen. Klicka på Exempel för att ladda ett realistiskt fall med procent-kodning, upprepade query-nycklar och hash-fragment. Exempel-URL:

https://api.shop.example.com/v1/orders?customer=Ava%20Chen&status=active&total%5Bgte%5D=49.99&page=2#summary

Vad URL-konstruktorn än accepterar funkar — inklusive <code>file://</code>, <code>mailto:</code>, anpassade scheman, IPv6-värdar och userinfo (<code>user:pass@host</code>).

2

Läs komponenterna

Den högra panelen visar den parsade URL:en som JSON: protocol, host, port, pathname, pathSegments (sökvägen uppdelad i en array), searchParams (avkodade nyckel-värde-par, med arrayer för upprepade nycklar) och hash. Uppdateras medan du skriver.

3

Kopiera eller ladda ner

Klicka på Kopiera för att skicka JSON till urklipp, eller Ladda ner för att spara som .json-fil. Minifiera trycker ihop JSON till en rad om du behöver den för en loggrad. Använd Rensa i indatapanelen för att börja om.

När du faktiskt skulle använda det här

Felsöka redirects och analytics-URL:er

En URL med tolv query-parametrar från en annonsspårnings-redirect är oläsbar i adressfältet. Klistra in den här för att se parametrarna en per rad, avkodade, med destinations-url-parametern helt uppackad. Passar bra ihop med strippning av trackers i vår URL Cleaner (när den är ute).

Inspektera webhook- och OAuth-callback-URL:er

OAuth-callbacks och webhook-payloads stoppar in tillstånd i query-stringen. Att dela upp den gör det uppenbart om state-token saknas, om code blev avhuggen, eller om redirect_uri är dubbelkodad. RFC 6749 kräver de parametrarna och det här visar alla på en gång.

Bygga testfixtures

När du skriver tester mot en URL vill du oftast ha den som ett strukturerat objekt, inte en sträng. Klistra in URL:en, kopiera JSON, släng in i din fixturfil. Sparar dig från att skriva protocol: 'https:' för hand för femte gången idag.

Sanity-check på supportärenden

"Det gick sönder när jag klickade på den här länken" — länken är 400 tecken lång med dubbelkodade snedstreck. Parsern visar exakt vad webbläsaren skulle se, inklusive om %252F betyder en bokstavlig %2F eller en sökvägsavskiljare som blivit dubbelkodad på vägen genom en proxy.

Vanliga frågor

Funkar det med relativa URL:er?

Nej — URL-konstruktorn behöver en absolut URL (med ett protokoll som https:// eller file://). För relativa URL:er, lägg först till en bas som https://example.com, och plocka sedan bort den från resultatet. WHATWG-specen beskriver tvåargumentsformen (new URL(relative, base)) som webbläsare använder internt.

Hur hanterar den upprepade query-nycklar?

Upprepade nycklar viks ihop till en array. Så ?tag=red&tag=blue blir "tag": ["red", "blue"] i utdata. Det matchar hur de flesta server-frameworks (Express, FastAPI, ASP.NET) parsar query-strängar.

Och array-hakparentes-notation som ?items[]=1&items[]=2?

Parsern behandlar hakparenteserna som en del av nyckeln — så du ser "items[]": ["1", "2"]. Det är ärligt mot bytesen på kabeln. Om du behöver en framework-specifik avkodare (PHP, Rails, qs.js), gör efterbearbetningen på den parsade utdatan.

Är det säkert att klistra in inloggningsuppgifter i URL:er (user:pass@host) här?

Parsningen sker helt i din webbläsare — URL:en lämnar aldrig din maskin. Med det sagt avråds det generellt från att lägga inloggningsuppgifter i en URL (RFC 3986 §3.2.1 noterar säkerhetsriskerna), och de flesta webbläsare strippar dem tyst. Om du klistrar in en visas fälten username och password i utdata.

Klarar den internationaliserade domännamn (IDN)?

Webbläsarens URL-konstruktor hanterar IDN-domäner, men utdata kan visa Punycode-formen (xn--...) i stället för Unicode-formen. Det är så URL:en faktiskt skulle skickas över kabeln. Om du behöver konvertera mellan dem kommer ett dedikerat Punycode-verktyg snart till den här sektionen.

Varför heter utdata "Komponenter" i stället för "JSON"?

Det är JSON — men inramningen spelar roll. Utdata är URL:ens delar, strukturerade. Om du behandlar sidan som en "URL → JSON-konverterare" missar du poängen: värdet ligger i uppdelningen, inte i formatet.

Andra URL- och JSON-verktyg

Parsning är en operation. Här är vad som passar naturligt ihop med det: