Gratis omvandlare

URL-kodare / Avkodare

Koda och avkoda webbadresser och URI-komponenter direkt i din webbläsare. Gratis, privat och ingen uppladdning krävs.

Eller

Om detta verktyg

URL-kodning (formellt procentkodning, definierad i RFC 3986) översätter tecken som har speciell betydelse i webbadresser – mellanslag, snedstreck, et-tecken, hash-tecken – till en säker form med hjälp av procenttecken följt av hexadecimala siffror. Mellanslagstecknet blir %20 (eller + i formkodade sammanhang), et-tecken blir %26, och så vidare. Utan denna kodning skulle specialtecken tolkas som URL-syntax snarare än som bokstavlig data, som bryter URL-adressen eller orsakar oavsiktligt beteende.

Det finns två relaterade men distinkta kodningar. Standardkodningen för URL-komponenten använder %-escapes för allt utanför den oreserverade teckenuppsättningen: A-Z, a-z, 0-9, bindestreck, understreck, punkt, tilde. Den formkodade varianten (application/x-www-form-urlencoded) behandlar dessutom mellanslag som plustecken och använder olika regler för vissa andra tecken. JavaScripts encodeURIComponent använder den strikta komponentkodningen; encodeURI använder en mer tillåtande form som bevarar URL-strukturtecken.

Detta verktyg erbjuder både kodning och avkodning. Encode mode lindar varje tecken som kräver escape i %HH-format; avkodningsläget vänder omvandlingen. Båda körs helt i din webbläsare med hjälp av inbyggda JavaScript URL-funktioner, så ingen data skickas någonstans.

Varför koda eller avkoda webbadresser

Varje gång data ingår i en URL – frågesträngsparametrar, sökvägssegment som innehåller användarinmatning, omdirigeringsmål – krävs korrekt kodning. Om du misslyckas med att koda produceras webbadresser som går sönder när specialtecken visas, läcker parametergränser till frågesträngar (omvandlar &x=1 till en separat parameter) eller blockeras av webbservrar som felaktiga förfrågningar.

Avkodning är det omvända: extrahera originaldata från en kodad URL. Webbläsarens adressfält visar ofta webbadresser i kodad form; avkodning avslöjar vad som egentligen var tänkt. Loggning, felsökning och säkerhetsanalys drar alla nytta av avkodade webbadresser som visar de ursprungliga parametrarna och sökvägarna.

Så här använder du det

Klistra in en sträng, välj riktning.

  1. Välj koda eller avkoda: Encode radbryter osäkra tecken i %HH-format. Avkoda omvänder %HH escapes tillbaka till bokstavliga tecken.
  2. Lägg till inmatningstext: Klistra in strängen för att koda eller avkoda. För kodning är detta vanligtvis ett bokstavligt värde med mellanslag, specialtecken eller icke-ASCII-innehåll. För avkodning är detta en URL eller URL-komponent som innehåller %HH escapes.
  3. Konvertera: Verktyget tillämpar encodeURIComponent eller decodeURIComponent. Kodad utdata är säker att bädda in i en URL; avkodad utdata är det ursprungliga bokstavliga värdet.
  4. Kopiera eller ladda ner: Använd resultatet var du än behöver det. Kodade värden passar in i webbadresser; avkodade värden avslöjar originaldata.

Vanliga användningsfall

Tekniska detaljer

encodeURIConponent kodar varje tecken utanför den oreserverade uppsättningen [A-Za-z0-9-_.~]. Mellanslag blir %20, plustecken blir %2B, likhetstecken blir %3D och så vidare. Tecken utanför ASCII kodas först i UTF-8 och sedan %-escapes varje byte.

encodeURI är mer tillåtande och är avsedd för fullständiga webbadresser snarare än komponenter. Det undviker inte /, ?, &, =, #, och några andra eftersom dessa tecken har URL-syntax betydelse. För att bädda in användardata i en URL är encodeURIComponent nästan alltid rätt val.

decodeURIComponent vänder %-escapes, vilket validerar att varje escape är välformaterad och att de resulterande byten bildar giltig UTF-8. Felaktig inmatning skapar ett fel snarare än att producera skräp.

Bästa metoder

Vanliga frågor

Vilka tecken behöver URL-kodning?
Reserverade tecken (&, =, ?, #, /, :, @) och osäkra tecken (mellanslag, <, >, {, }, |, ^, ~, [, ], `) måste kodas. Alfanumeriska tecken och -_.~ är säkra och behöver inte kodas.
Vad är skillnaden mellan encodeURI och encodeURIConponent?
encodeURI kodar en fullständig URL men bevarar reserverade tecken (://?#). encodeURIComponent kodar allt utom -_.!~*'() — använd den för frågeparametervärden. Detta verktyg erbjuder båda lägena.
Hur kodas mellanslag i webbadresser?
Mellanslag kan kodas som %20 (standard procentkodning) eller + (formkodning). %20 är korrekt för URL-sökvägar, medan + används i frågesträngar från HTML-formulär. Detta verktyg använder %20 som standard.
Kan jag koda Unicode-tecken?
Ja. Unicode-tecken kodas först till UTF-8-byte, sedan procentkodas varje byte. Till exempel blir '日' %E6%97%A5 (tre UTF-8-byte, varje procentkodad).
Ska jag använda encodeURI eller encodeURIConponent?
Nästan alltid kodaURIConponent. Använd endast encodeURI om du har en fullständig URL och vill bevara dess struktur - vanligtvis sällsynt eftersom du ändå bygger webbadresser från komponenter.
Laddas min data upp till en server?
Nej. URL-kodning och avkodning sker helt och hållet i din webbläsare.
Klarar den Unicode-emoji?
Ja. Emoji är multi-byte UTF-8-sekvenser; kodaren producerar en kedja av %-escaped byte som avkodare korrekt sätter ihop tillbaka till den ursprungliga emojin.
Vad händer om min indata har %HH-liknande strängar som faktiskt inte är kodade?
Kodning förvandlar varje % till %25, och återställer sedan escape för resten. Avkodning av strikt indata ger fel på felaktiga escapes; strängar som ser tvetydigt ut kan avkoda felaktigt.