Utilia

URL-parser

Indsæt en URL for at se dens protokol, vært, port, stisegmenter, afkodede forespørgselsparametre og fragment, og rediger derefter parametrene og byg URL'en om.

Sådan fortolker du en URL

  1. Indsæt en URL i URL, der skal analyseres. Den fortolkes, mens du skriver; du kan også trykke på Enter eller klikke på Fortolk URL.
  2. Aflæs delene: Protokol, Værtsnavn, Port, Vært (med port), Oprindelse (origin), Brugernavn, Adgangskode, Sti og Fragment (#).
  3. Tjek listen Stisegmenter og tabellen Forespørgselsparametre, som viser hver nøgle og værdi afkodet ved siden af den Rå tekst.
  4. Under Rediger og byg om kan du ændre en nøgle eller en værdi, klikke på Tilføj en parameter eller Fjern eller redigere fragmentet. Genopbygget URL opdateres, mens du skriver.
  5. Klik på Kopiér for at kopiere den nye URL.

Hvis du indsætter en adresse uden skema, som example.com/page, antager værktøjet https:// og fortæller det.

Delene i en URL

Værktøjet bruger browserens indbyggede URL-parser, som følger WHATWG URL Standard, så den ser adressen præcis, som en browser gør. Tag https://ann:secret@shop.example.com:8080/en/products?size=M#reviews:

  • Protokol (https:) er det skema, der fortæller browseren, hvordan ressourcen skal hentes.
  • Brugernavn og Adgangskode (ann, secret) er valgfrie legitimationsoplysninger. Adgangskoden er skjult som standard; sæt kryds ved Vis adgangskode for at se den. Browsere fjerner eller afviser nu sådanne oplysninger i links, og du bør aldrig dele en URL, der indeholder dem.
  • Værtsnavn (shop.example.com) er servernavnet. Internationaliserede domænenavne vises i punycode (xn--…), som er det, DNS bruger.
  • Port (8080) vises, når URL’en angiver en. Ellers bemærker værktøjet skemaets standardport: 80 for http og ws, 443 for https og wss, 21 for ftp. En port, der er lig med standarden, som :443 på https, fjernes af parseren.
  • Vært (med port) kombinerer begge, og Oprindelse (origin) er skema + vært + port, den enhed, browsere bruger til sikkerhedsregler som CORS.
  • Sti (/en/products) deles op i Stisegmenter, hver især procentafkodet, så caf%C3%A9 læses som café.
  • Fragment (#) (reviews) peger på en del af siden. Det sendes aldrig til serveren.

Forespørgselsparametre

Forespørgselsstrengen deles ved &, og hvert par deles ved det første =. Nøgler og værdier afkodes, som HTML-formularer koder dem: %XX-sekvenser bliver til tegn, og + bliver til et mellemrum. Gentagne nøgler, som er almindelige til filtre og felter med flere valg (size=M&size=L), bevares alle og mærkes »(gentaget 1/2)«, »(gentaget 2/2)« i rækkefølge. En nøgle uden = vises med en tom værdi. Når en sekvens ikke kan afkodes, vises den rå tekst i stedet.

Redigering og genopbygning

Editoren starter med de aktuelle parametre. Tomme rækker ignoreres. Den nye forespørgselsstreng kodes som en formularafsendelse, som URLSearchParams gør det: mellemrum bliver til +, og reserverede tegn som &, = eller # procentkodes, så en værdi trygt kan indeholde dem. Det er praktisk til at fjerne sporingsparametre, ændre et sidetal eller bygge testlinks. Når adgangskoden er skjult, er den også skjult i feltet Genopbygget URL, men Kopiér kopierer den rigtige URL.

Ofte stillede spørgsmål

Hvorfor siger værktøjet, at min URL ikke er gyldig?

De hyppigste årsager er mellemrum i værten, en port over 65535, en manglende vært efter https:// eller tegn, der ikke er tilladt i et værtsnavn. Tekst uden punktum, som et enkelt ord, behandles heller ikke som et værtsnavn.

Bliver URL'en besøgt eller sendt nogen steder hen?

Nej. Adressen fortolkes kun i din browser. Der sendes ingen forespørgsel til websitet.

Hvorfor blev %20 til + i den genopbyggede URL?

Begge betyder et mellemrum i en forespørgselsstreng. Genopbygningen bruger den formularkodning, som browsere og de fleste serverframeworks frembringer, og den skriver mellemrum som +.

Håndterer det mailto:-, tel:- eller data:-URL'er?

Ja. De fortolkes også, men de har ingen vært eller port: deres indhold vises i Sti.

Hvad er forskellen på Vært og Værtsnavn?

Værtsnavn er kun navnet. Vært (med port) tilføjer porten, når en er angivet eksplicit, som i example.com:8080.