URL til JSON
Konverter enhver URL til et struktureret JSON-objekt — klar til at smide ind i en config, fixture eller test
URL
JSON
Hvad gør URL til JSON?
Du indsætter en URL til venstre, og til højre får du et JSON-objekt, hvor hver del af URLen har et navn — protocol, host, pathname, searchParams, hash, det hele. Pointen er ikke at kigge én gang og gå videre. Pointen er at kopiere den JSON ind et sted, hvor den kan blive — en konfigurationsfil, en Jest-fixture, et Postman-environment, et YAML-manifest, en request-mock til dine tests. URL-strenge er nemme at skrive, men svære at asserte mod; strukturerede objekter er lige modsat.
Under motorhjelmen er det den samme algoritme, som hver browser bruger gennem URL API, der implementerer WHATWG URL Standard. Queryparametrene afkodes undervejs — %20 bliver til et mellemrum, %5B bliver til [, gentagne nøgler samles i et JSON-array — samme opførsel, du får fra URLSearchParams. Outputtet formateres derefter med de samme JSON.stringify-regler, som ethvert andet JSON-værktøj på sitet bruger.
Vil du bare kigge på en URLs dele på skærmen — debugge en redirect, skimme en tracker-kæde — passer siden URL Parser bedre. Begge sider laver samme konvertering; denne her er rettet mod tilfældet, hvor JSONen i sig selv er det artefakt, du beholder. Alt er lokalt i din browser, ingen upload, ingen logs. Konverteringen følger RFC 3986 for syntaks og RFC 8259 for JSON-output.
Sådan konverterer du en URL til JSON
Tre trin. Hvert trin svarer til en knap på siden.
Indsæt en URL eller hent eksemplet
Smid en URL ind i venstre panel. Klik på Eksempel for at hente en realistisk e-handels-URL med procent-kodning, gentagne query-nøgler og et hash-fragment. Eksempel:
https://api.shop.example.com/v1/orders?customer=Ava%20Chen&status=active&total%5Bgte%5D=49.99&page=2#summaryAlt, URL-konstruktoren accepterer, virker — <code>http://</code>, <code>https://</code>, <code>file://</code>, <code>mailto:</code>, IPv6-hosts og userinfo.
Læs JSON-outputtet
Højre panel opdateres, mens du skriver. Du får 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. Feltet href bærer URLens kanoniske, normaliserede form — nyttigt, når du skal verificere, at to URLer er ækvivalente, selv hvis den ene havde standardport eller afsluttende skråstreg.
Kopiér, download eller minificer til din fixture
Klik på Kopiér for at sende JSONen til udklipsholderen, Download for at gemme den som url.json, eller Minificer for at presse den ned på én linje til en logbesked eller en queryparameter. Ryd i input-panelet nulstiller begge editorer.
Hvornår du faktisk får brug for det
Bygge fixtures til HTTP-requests
Når dine tests asserter mod en URL, er det skørt at asserte mod en streng — store/små bogstaver, standardporte, afsluttende skråstreger og parameterrækkefølge bider alle. Konverter URLen til JSON, læg objektet i din fixture og asserte felt for felt. Spiller fint med biblioteker som Mock Service Worker eller Nock, der matcher på URL-form.
Seede API-klienter i konfigurationsfiler
En YAML- eller JSON-config, der gemmer en base-URL som én streng, tvinger hver forbruger til at parse den igen. At gemme den allerede opdelt (host, port, basePath, defaultParams) gør configen selvdokumenterende og fjerner en hel klasse af "har vi glemt afsluttende skråstreg"-bugs. Nyttigt for SDK-generatorer og OpenAPI-tooling.
Dokumentation af OAuth- og webhook-callbacks
Når du skriver dokumentation, der viser "din callback-URL kommer til at se sådan ud", er det meget rarere for læseren at få en JSON-opdeling ved siden af den rå URL. Standarder som RFC 6749 kræver bestemte queryparametre; en struktureret form gør "her skal du se state" tydeligt på et splitsekund.
Postman-/Bruno-/HTTPie-environment-eksporter
De fleste API-klienter gemmer URLer internt som opdelte objekter. Importerer du gamle URLer til en ny collection — fx hvis du migrerer fra en docs-side, der lister endpoints som rene strenge — kan du ved at konvertere til JSON først skripte importen i stedet for at klikke manuelt på 200 endpoints.
Almindelige spørgsmål
Hvordan adskiller det her sig fra URL Parser-siden?
Samme motor, anden indpakning. URL Parser er til at inspicere — du indsætter en lang URL, kigger på delene, beslutter, hvad der er galt, og lukker fanen. URL til JSON er til at tage resultatet og bruge det et andet sted — en fixture-fil, en config, et Postman-environment. JSON-outputtet er identisk; det er teksten og use casene, der er trimmet til "jeg vil have det her i en fil"-flowet.
Hvorfor er outputtet JSON og ikke YAML eller en JS-objektliteral?
JSON er den mindste fællesnævner — hvert sprog, hvert configsystem og hvert testframework læser det. Skal du bruge YAML, så kør JSONen igennem vores værktøj JSON til YAML. Skal du bruge en JS-objektliteral, er JSON allerede gyldig JS — sæt det direkte ind i din .ts-fil. Konverteringen følger RFC 8259, så outputtet virker alle steder, hvor JSON accepteres.
Hvordan repræsenteres gentagne query-nøgler?
Gentagne nøgler samles i et array. ?tag=red&tag=blue bliver "tag": ["red", "blue"]. Det er sådan Express, FastAPI, ASP.NET, Spring og de fleste frameworks parser query strings — og det er, hvad URLSearchParams.getAll() returnerer.
Hvad med arrays i kantet parentesnotation, som ?items[]=1&items[]=2?
Parenteserne bevares som en del af nøglen — du ser "items[]": ["1", "2"] i outputtet. Det er en tro repræsentation af de bytes, der ryger over ledningen. Hvis dit framework (PHP, Rails, qs.js) skal bruge, at parenteserne fjernes eller pakkes ud i et indlejret objekt, så gør det i et efterbehandlingstrin på JSONen.
Indeholder JSONen adgangskoden, hvis min URL har user:pass@host?
Ja — felterne username og password dukker op i outputtet, hvis din URL har dem. Konverteringen kører fuldt ud i din browser, så loginoplysningerne forlader aldrig din maskine. Men at putte loginoplysninger i URLer er generelt en dårlig idé (se RFC 3986 §3.2.1), og du vil næsten med sikkerhed fjerne dem, før du commiter JSONen til et repo.
Kan jeg konvertere en liste af URLer på én gang?
Ikke på denne side — én session konverterer én URL. Har du hundrede URLer at behandle, er den nemmeste vej at indsætte denne sides outputstruktur i et lille script og loope. Eller brug vores JSON Formatter, når du selv har skriptet batchen. Batchkonvertering som UI-feature er på roadmappen, men er ikke leveret endnu.
Andre URL- og JSON-værktøjer
Konvertering er bare én operation. Det her passer naturligt sammen med den: