URL-kodare och avkodare
Gratis URL-kodare och avkodare. Procentkoda frågeparametrar eller hela URL:er, avkoda %XX-sekvenser och tolka + som mellanslag. Körs i webbläsaren.
Så använder du URL-kodaren och avkodaren
- Välj Koda för att göra om text till en URL-säker form, eller Avkoda för att göra om procentkodad text till läsbara tecken igen.
- När du kodar väljer du ett Läge: Komponent för ett enskilt värde (som en frågeparameter eller ett sökvägssegment), eller Hel URL för att koda en komplett adress utan att förstöra dess struktur.
- När du avkodar data från ett HTML-formulär eller en frågesträng slår du på Tolka + som mellanslag, så att
+-tecken blir mellanslag. - Klistra in din text och kopiera resultatet. Om en procentsekvens är felaktig rapporterar verktyget ett fel i stället för att gissa.
Vad är URL-kodning?
URL:er får bara innehålla en begränsad uppsättning ASCII-tecken. Vissa tecken, som /, ?, #, & och =, är reserverade eftersom de skiljer adressens delar åt: sökvägen, frågesträngen och fragmentet. Andra, som mellanslag, citattecken, bokstäver med accent eller emoji, är helt enkelt inte tillåtna. URL-kodning, även kallad procentkodning, löser båda problemen genom att ersätta varje problematisk byte med ett % följt av två hexadecimala siffror.
Texten omvandlas först till UTF-8-byte, och varje byte kodas för sig. Ett mellanslag blir %20, ett et-tecken blir %26, ä (två byte i UTF-8) blir %C3%A4, ö blir %C3%B6 och emojin 😀 (fyra byte) blir %F0%9F%98%80. Oreserverade tecken, alltså bokstäverna a–z, siffror och - _ . ~, behöver aldrig kodas.
Komponentläge eller läget Hel URL
Att välja rätt läge är det viktigaste beslutet, och att välja fel är en klassisk källa till buggar.
Komponent fungerar som JavaScripts encodeURIComponent. Det kodar alla reserverade tecken, så att resultatet kan placeras säkert i en enskild del av en URL. Använd det för värden i frågeparametrar, sökvägssegment eller allt som en användare har skrivit in. Söktermen rock & roll blir till exempel rock%20%26%20roll. Om du inte kodade & skulle servern läsa roll som början på en ny parameter.
Hel URL fungerar som encodeURI. Det förutsätter att indata redan är en komplett adress och bevarar tecknen som ger den struktur, som : / ? # & och =, medan mellanslag och tecken utanför ASCII kodas. Använd det för att snygga till en adress som https://example.com/räksmörgås meny?q=te till https://example.com/r%C3%A4ksm%C3%B6rg%C3%A5s%20meny?q=te. Använd det inte på enskilda värden: ett & i ett värde skulle förbli okodat och förstöra frågesträngen.
En bra tumregel: bygg URL:er av delar, koda varje värde i komponentläge och använd bara läget Hel URL för adresser som du får färdigsammansatta.
Plustecknet och formulärkodning
HTML-formulär som skickas med application/x-www-form-urlencoded kodar mellanslag som + i stället för %20. Därför ser sök-URL:er ofta ut som ?q=hej+världen. Vanlig procentavkodning lämnar + oförändrat, eftersom ett plus i en sökväg bara är ett plus. När du avkodar en frågesträng eller formulärdata slår du på Tolka + som mellanslag för att få hej världen. Låt det vara avslaget för sökvägar och för värden där ett bokstavligt + är viktigt, som telefonnummer eller Base64-data. Ett riktigt plustecken i formulärdata skickas som %2B, så det avkodas korrekt i båda fallen.
Integritet
Kodning och avkodning körs helt i din webbläsare. Inget du klistrar in, inte heller URL:er som kan innehålla token, sessions-id:n eller personuppgifter, skickas till någon server eller sparas.
Vanliga frågor
Varför misslyckas avkodningen med ett fel om felaktig procentkodning?
Ett % måste följas av exakt två hexadecimala siffror, och de byte som bildas måste vara giltig UTF-8. Strängar som 100%, %G1 eller en avkortad sekvens som %E2%82 kan inte avkodas tillförlitligt, så verktyget rapporterar problemet i stället för att ge felaktig text. Vill du ha med ett bokstavligt procenttecken kodar du det som %25.
Vad är skillnaden mellan %20 och +?
Båda kan stå för ett mellanslag, men i olika sammanhang. %20 är giltigt överallt i en URL. + betyder mellanslag bara i formulärkodade frågesträngar, på andra ställen är det ett vanligt plustecken.
Ska jag koda en hel URL i komponentläge?
Bara om hela URL:en i sig är ett värde i en annan URL, till exempel en redirect=-parameter. Då är komponentläget precis rätt: https://a.com/?x=1 blir https%3A%2F%2Fa.com%2F%3Fx%3D1.
Varför har min text kodats två gånger?
Dubbelkodning uppstår när redan kodad text kodas igen, så att %20 blir %2520. Avkoda en gång för att kontrollera, och se till att varje värde bara kodas i det ögonblick det sätts in i URL:en.
Döljer eller skyddar URL-kodning data?
Nej. Procentkodning är helt reversibel och ger ingen säkerhet. Känsliga värden i URL:er kan hamna i webbläsarhistorik och serverloggar, så undvik helt att lägga hemligheter i URL:er.
Relaterade verktyg
- Base64-kodare och avkodare Gratis Base64-kodare och avkodare med fullt stöd för UTF-8 och ett URL-säkert base64url-läge. Körs helt i din webbläsare, inget laddas upp.
- JSON-formaterare och validerare Gratis JSON-formaterare och validerare som snyggar till, minifierar och kontrollerar JSON i webbläsaren, med syntaxfel angivna med rad och kolumn.