raatools/

URL-koodaaja / -dekoodaaja

Koodaa tai dekoodaa URL-osoitteita ja kyselymerkkijonoja.

Mika on URL-koodaus?

URL-koodaus (eli prosenttikoodaus) on mekanismi merkkien muuntamiseksi, jotka eivat ole sallittuja URL-osoitteissa. Erikoismerkit korvataan prosenttimerkilla ja sen kahdella heksadesimaalinumerolla (esim. valilyonti tulee %20).

URL-osoitteet voivat sisaltaa vain rajoitetun joukon merkkeja RFC 3986 -standardin mukaan: kirjaimet (A-Z, a-z), numerot (0-9) ja muutama erikoismerkki (-, _, ., ~). Kaikki muu on koodattava.

Milloin URL-koodausta tarvitaan?

  • Erikoismerkkien valittaminen kyselymerkkijonon parametreissa (esim. ?q=hello%20world).
  • Lomakedatan koodaus HTTP POST -pyynnoissa application/x-www-form-urlencoded-sisaltotyypilla.
  • API-pyynto-URL:ien muodostaminen ohjelmallisesti kayttajan syotteella.
  • URL-osoitteiden upottaminen muiden URL-osoitteiden sisaan (esim. uudelleenohiaosparametrit).
  • Unicode-merkkien (aksenttikirjaimet, emojit, CJK-merkit) sisallyttaminen URL-osoitteisiin.

Koodaus vs. purku

Koodaus muuntaa selkotekstin URL-turvalliseksi merkkijonoksi korvaamalla kielletyt merkit prosenttikoodatuilla vastineilla. Purku kaantaa ne takaisin alkuperaisiksi merkeiksi. Esimerkiksi: 'moi maailma' koodataan 'moi%20maailma'.

Tyokalun kayttohje

Liita tai kirjoita teksti syotekenttaan. Valitse koodaus- tai purkutila. Tulos paivittyy valittomasti. Vaihda lahteen ja tulosteen paikkaa napsauttamalla vaihtopainiketta.

Koodattavat merkit

Tama tyokalu kayttaa JavaScriptin encodeURIComponent()-funktiota, joka koodaa kaikki merkit paitsi: A-Z, a-z, 0-9 ja neljae erityismerkkia: - _ . ~. Kaikki muut merkit prosenttikoodataan.

Yleisiaae URL-koodausvirheita

Yleisin virhe on kaksinkertainen koodaus — jo koodatun merkkijonon koodaaminen, jolloin %20 muuttuu %2520:ksi. Tama rikkoo linkit ja kyselymerkkijonot. Tarkista aina, onko merkkijono jo koodattu ennen koodaamista.

Kayttajan syotteen koodaamatta jaettaeminen ennen URL-osoitteeseen lisamistae on tietoturva-aukko. Koodaamaton kayttajan syote voi injektoida ylimaaraisia parametreja tai muuttaa URL:n rakennetta, mikae mahdollistaa avoimen uudelleenohjaushyoekkayksen.

Kaytannon vinkkeja

Web-kehityksessa useimmat kehykset kasittelevat URL-koodauksen automaattisesti lomakkeiden lahetyksissa ja HTTP-asiakaskirjastoissa. Manuaalista koodausta tarvitaan paeasiassa URL:ien manuaalisessa muodostamisessa tai kolmannen osapuolen APIen kaytossa.

Usein kysytyt kysymykset

Mika ero on %20:lla ja +:lla valilyonneissa?

Molemmat edustavat valilyonteja, mutta eri yhteyksisssa. %20 on standardin URL-koodaus valilyonneille ja toimii kaikkialla. + on vanhentunut muoto, jota kaytetaan vain application/x-www-form-urlencoded-lomakedatassa. Suosi %20:ta.

Pitaako UTF-8-merkit koodata?

Kylla. Ei-ASCII-merkit (aksenttikirjaimet, emojit, kiinanlaiset merkit jne.) on ensin koodattava UTF-8:ksi ja sitten prosenttikoodattava. Esimerkiksi ae (U+00E4) tulee %C3%A4 (sen UTF-8 tavuesitys heksadesimaalina).