Tools App av

URL-koding: når skal encodeURIConponent brukes

Prosentkode en URL-komponent eller en hel URL, og dekod prosentkodet tekst tilbake. Koding følger encodeURIComponent / encodeURI.

Hvordan det fungerer

Hvert tegn utenfor det tillatte settet skrives som et prosenttegn etterfulgt av to heksadesimale sifre i dens UTF-8-byte. encodeURIConponent unnslipper alt unntatt A-Z a-z 0-9 - _ . ! ~ * ( ) mens encodeURI holder reservert URL-tegnsetting intakt.

  • Bruk komponentmodus for spørringsverdier; full-URL-modus beholder : / ? & = intakt.

Hvorfor det betyr noe

Spørrestrenger brytes på subtile måter: et søkeord som inneholder & stille skaper en ny parameter, en skråstrek inne i et filnavn endrer banen, og et mellomrom ender opp et uventet sted. Riktig koding er forskjellen mellom en fungerende lenke og en støttebillett.

Et bearbeidet eksempel

encodeURIComponent("a b&c") returnerer a%20b%26c, mens encodeURI beholder & fordi den behandler strengen som en hel URL. Hvis du velger feil, endres hvor søket deler seg.

Vanlige feil

  • Bruker full-URL-koding for én enkelt spørringsverdi.
  • Forventer at decodeURIConponent skal gjøre + om til et mellomrom; det er formkoding.
  • Koding to ganger og lurer på hvorfor serveren ser %2520.

Praktiske tips

Kod hver søkeverdi separat, og bygg deretter URL-en fra de kodede delene. Hvis en verdi allerede ser kodet ut, dekode den en gang og kode den på nytt fra den dekodede formen - gjentatt koding er den vanligste kilden til feil i %25-stil.

Hvordan bruke den

  1. Åpne verktøyet. Alt kjører i nettleserfanen.
  2. Lim inn eller skriv inn input, og velg deretter handlingen du trenger.
  3. Sjekk resultatet og kopier det med ett klikk.

Åpne verktøyet

Vanlige spørsmål

Når bruker jeg komponent versus full URL?

Komponent for en enkelt spørringsverdi, hvor / ? & = må unngås. Full URL holder disse skilletegnene intakte.

Hvorfor blir mellomrom %20?

Prosentkoding representerer et mellomrom som %20. +-skjemaet tilhører HTML-skjemakoding, ikke URL-er.

Hvorfor forlater dekoding + tegn?

decodeURIConponent behandler ikke + som et mellomrom. Erstatt + med et mellomrom først hvis verdien kom fra en skjemainnsending.

Er dette verktøyet virkelig gratis?

Ja. Det er ingen konto, ingen betalingsmur og ingen bruksgrense. Tools-appen er finansiert av aumenso, studioet bak.

Er noe jeg skriver inn lastet opp?

Nei. Verktøyet kjører i nettleserfanen din; det du skriver blir aldri sendt til oss og aldri lagret.

← Alle innlegg