URL-kodning og afkodning i praksis
URL-kodning, også kendt som procent-kodning, er en metode til at omdanne tegn i en URL, så de kan overføres sikkert over internettet. URL'er må kun indeholde et begrænset sæt af tegn fra ASCII-tegnsættet. Tegn uden for dette sæt, eller tegn med særlige funktioner i en URL-struktur (såsom mellemrum, ampersand eller lighedstegn), skal omdannes til et sikkert format.
Når du koder tekst til en URL, erstattes de usikre tegn med et procentsymbol % efterfulgt af to heksadecimale tal, der repræsenterer tegnets værdi i UTF-8. For eksempel vil et mellemrum blive kodet til %20. Afkodning er den omvendte proces, hvor disse procent-sekvenser oversættes tilbage til de oprindelige tegn.
Dette værktøj understøtter konvertering af op til 2.000.000 tegn. Hvis du forsøger at indsætte en tekst, der overskrider denne grænse, vil værktøjet vise fejlmeddelelsen: "Dette input er for langt til dette værktøj. Hold det under {max} tegn.".
Forskellen på URL-komponenter og fulde URL'er
Når du arbejder med URL-kodning, er det afgørende at skelne mellem kodning af en enkelt komponent og kodning af en fuld URL. Værktøjet lader dig vælge det korrekte omfang via indstillingen "URL-omfang".
- Komponent: Denne indstilling bruger de tekniske funktioner
encodeURIComponentogdecodeURIComponent. Den koder alle tegn, der har en strukturel betydning i en URL, herunder:,/,?,&og=. Dette er nødvendigt, når du skal indsætte tekst i forespørgselsværdier (query parameters), stidele eller formularværdier, så disse tegn ikke forveksles med selve URL-strukturen. Et eksempel på input til kodning erhello world & city=上海, som efter konvertering bliver tilhello%20world%20%26%20city%3D%E4%B8%8A%E6%B5%B7. - Fuld URL: Denne indstilling anvender
encodeURIogdecodeURI. Her bevares de tegn, der definerer selve URL-strukturen (såsom protokollenhttps://og parametre-separatorer som?og&), så URL'en forbliver funktionel og læsbar, mens kun de ulovlige eller ikke-ASCII-tegn kodes.
HTML-entiteter og escaping
HTML-entiteter bruges til at repræsentere tegn, som ellers har en særlig betydning i HTML-kode, eller som ikke nemt kan indtastes. Når du vælger tilstanden "HTML-entiteter", skjules indstillingerne for URL-omfang automatisk.
Escaping af HTML-entiteter forvandler tegn som <, >, &, anførselstegn samt ikke-ASCII-tekst til deres respektive entitets-koder. For eksempel vil tegnet < blive til <, og > bliver til >. Dette gør det muligt for webudviklere, indholdsredaktører og supportpersonale at indsætte rå tekst eller kodeeksempler direkte i HTML-dokumenter eller attributter uden at ødelægge sidens struktur eller risikere, at browseren fortolker teksten som faktiske HTML-elementer. Et eksempel på input til HTML-escaping er teksten 保存, som konverteres til 保存.
Det er vigtigt at bemærke, at escaping af HTML-entiteter udelukkende handler om strukturel formatering, så teksten kan vises korrekt i browseren. Escaping er ikke det samme som sikkerhedssanering (sanitization), som har til formål at fjerne ondsindet kode eller scripts fra ufiltreret brugerinput.
Regler for afkodning og fejlhåndtering
Når du afkoder URL'er, skal alle procent-kodninger udgøre komplette og gyldige UTF-8-sekvenser. Hvis en sekvens er ufuldstændig eller beskadiget, kan afkodningen ikke gennemføres.
- Ødelagte sekvenser: En ufuldstændig sekvens som
%E0%A4%Akan ikke tolkes korrekt. Hvis du forsøger at afkode en sådan tekst, vil værktøjet afbryde processen og vise fejlmeddelelsen: "Denne URL-tekst har en ødelagt procent-kodning.". - Manglende input: Hvis du klikker på konverteringsknappen uden at have indtastet tekst, vises meddelelsen: "Indsæt noget input først.".
- Tidsafbrydelse: Hvis en konvertering mod forventning tager for lang tid, vil systemet stoppe processen med meddelelsen: "Denne konvertering tager for lang tid. Prøv med et mindre input.".
- Generelle fejl: Hvis en konvertering fejler af andre årsager, vises meddelelsen: "Kunne ikke konvertere dette input.".
Værktøjet giver dig mulighed for at rydde både input og output på én gang, hvilket udløser meddelelsen "Input og output er ryddet.". Du kan også flytte dit genererede output tilbage til inputfeltet med knappen "Brug output", hvilket bekræftes med meddelelsen "Output flyttet til input.". Når du indlæser et af de indbyggede eksempler, vises meddelelsen "Eksempel indlæst.".
Fortrolighed og lokal databehandling
Når du arbejder med følsomme URL-parametre eller HTML-tekster, er databeskyttelse afgørende. Dette værktøj udfører alle konverteringer lokalt i din egen browser. Der sker ingen upload af dine indtastede data til BroBroGo-serverne. Behandlingen af dine data forbliver på din egen enhed.
Ofte stillede spørgsmål (FAQ)
Skal jeg vælge URL-komponent eller fuld URL?
Brug 'komponent' til forespørgselsværdier, stidele eller formularværdier. Brug 'fuld URL', hvis du vil bevare tegn som : / ? & = læsbare.
Hvad ændrer escaping af HTML-entiteter?
Det forvandler tegn som <, >, &, anførselstegn og ikke-ASCII-tekst til entiteter, der sikkert kan indsættes i HTML-tekst eller attributter.
Hvorfor mislykkes URL-afkodning nogle gange?
Procent-kodninger skal være komplette UTF-8-sekvenser. En ødelagt sekvens som %E0%A4%A kan ikke afkodes uden at gætte.