fixmint
HU

URL-kódolás: mit jelent valójában a %20, a + és a %2F

Szerző: · · frissítve: 2026. november 8. · 5 perces olvasás

A százalékos kódolás egy olyan karaktert, amelyet az URL nem tud biztonságosan hordozni, úgy ír le, hogy egy százalékjelet követ a bájtértéke hexadecimálisan. A szóköz %20 lesz, az és-jel %26, a perjel pedig %2F. A kódolás az URL szerkezetét védi, mert az olyan karakterek, mint a & és a =, választják el a lekérdezési karakterlánc részeit.

URL kódolása és dekódolásaTele van az URL %20 kódokkalPróbáld ki ingyen

Melyik karakter maradhat változatlanul

Az URI-szabvány (RFC 3986), amelyre az URL-ek épülnek, néhány karaktert érintetlenül hagy: az A–Z és a–z betűket, a számjegyeket és a négy jelet: - _ . ~. Ezeket soha nem kell kódolni. A többi karakternek szerepe van az URL-ben. A kettőspont választja el a sémát a többitől, a perjel az útvonal részeit, a kérdőjel a lekérdezés kezdetét, a kettőskereszt a fragmentumot, az & és az = pedig a lekérdezést nevekre és értékekre bontja. Azt a karaktert, amelynek szerepe van, kódolni kell, ha adatként akarod használni, nem szerkezetként.

Ezért ugyanaz a karakter az egyik helyen kódolandó, a másikon nem. Egy lekérdezési értékben az és-jelet %26-nek kell írni, különben rosszul darabolódik a link. Egy link útvonalában viszont egyszerűen csak karakter.

Nem angol betűk

Az alap angol ábécén kívüli betűket UTF-8 bájtjaikként kódoljuk, és minden bájtot százalékkódként írunk le. A café szó é betűje a C3 és A9 két bájt, ezért %C3%A9 lesz, az egész szó pedig caf%C3%A9.

Egy egyszerű példa teszi konkréttá a szabályokat. A a b&c=d/é szöveg komponensként kódolva a%20b%26c%3Dd%2F%C3%A9 lesz. Minden karaktert kódolni kell, amely nem biztonságos betű, számjegy vagy jel: a szóközt, az és-jelet, az egyenlőségjelet, a perjelt és az ékezetes betűt.

Komponens vagy teljes URL

Azért van kétféle kódolás, mert más-más a célja. A komponens kódolás minden fenntartott karaktert adatként kezel. Egyetlen értékhez használd, például keresőszóhoz vagy fájlnévhez egy linken belül. A „rock & roll” keresőszóként kódolva rock%20%26%20roll lesz, így az és-jel az értéken belül marad.

A teljes URL-kódolás megtartja a szerkezetet. A https://example.com/a b kódolása https://example.com/a%20b lesz, a perjelek és a kettőspont érintetlen marad. Ezt egy teljes, érvénytelen címhez használd, amelyet érvényessé kell tenni, ne olyan értékhez, amely egy linken belül szerepel.

Ezért van az URL-eszköznek két beállítása: Komponens és Teljes URL. A teljes URL-dekódolás a %26 és %3D típusú, kódolt szerkezeti karaktereket is megtartja, így a link dekódolás után is működik.

Pluszjelek és űrlapadatok

A webes űrlapok másik szabályt használnak. Amikor egy űrlap űrlapadatként küldődik el, a szóközt + jelöli, nem %20. Egy szó szerinti pluszjelet ilyenkor %2B ír le. Így a „C++ tips” kifejezés űrlapadatban C%2B%2B+tips, sima komponenskódolásban pedig C%2B%2B%20tips lesz.

A dekódolás ugyanígy különbözik. Lekérdezési karakterláncban a + általában szóközt jelent. Egy link útvonalában a + pluszjel. Az eszköz csak akkor olvassa a + jelet szóköznek, ha be van pipálva a + használata szóközként (űrlapadatok) opció, ezért útvonalaknál és olyan értékeknél, ahol a pluszjel valódi, hagyd ki.

Hosszú lekérdezési karakterlánc olvasása

A link gyakran a kérdőjel után hordozza a beállításait. Vegyünk egy példát:

https://shop.example/search?q=red%20shirt&size=M&tag=summer%2Bsale

Dekódolva ez azt mondja, hogy a keresés piros póló, a méret M, a címke pedig summer+sale. A %2B azért marad pluszjel, mert kódolva volt. Illeszd be a linket az URL-eszközbe, és dekódolás után minden nevet és értéket felsorol, így a hosszú link könnyen olvashatóvá válik. Ha csak a rövidebb címet szeretnéd, követési beállítások nélkül, előbb tisztítsd meg a linket.

Kétszeres kódolás

A leggyakoribb hiba, hogy egy értéket kétszer kódolsz. A %20 szöveg újrakódolása %2520-at ad, mert maga a százalékjel is kódolódik, %25-ként. Az oldal ekkor szó szerinti %20-t keres az értékben, és a keresés vagy az oldal nem talál egyezést. Dekódold egyszer a linket, ellenőrizd az eredményt, és kódolj csak akkor, ha szükséges.

Hibás escape-ek

Egy százalékjel után pontosan két hexadecimális számjegynek kell állnia, az ékezetes betűknél pedig a számjegyeknek érvényes UTF-8-at kell alkotniuk. Egy félbevágott link, vagy egy szövegbe véletlenül beírt százalékjel hibás escape-et hagyhat, például %E0%A4%A-t. Az eszköz azt dekódolja, amit tud, a hibás bájtokat pontosan úgy hagyja, ahogy vannak, és jelzi, hány bájtot nem tudott dekódolni. Nem áll meg az első hibánál.

Szélső esetek

  • Kézzel gépelt szóközök egy linkben. A böngésző címsora magától kódolja a szóközöket, de a dokumentumba másolt link még tartalmazhat nyers szóközöket. Kódold őket, mielőtt továbbküldöd a linket.
  • Nem angol tartománynevek. Ezek külön rendszert, a punycode-ot használják, és az útvonal vagy a lekérdezés kódolása nem változtatja meg a gépnevet.
  • Félbevágott emoji. Egy sérült másolat egyetlen surrogate-felet hagyhat, amely nem kódolható. Az eszköz ezt pótjellel helyettesíti, és jelzi, hogy ezt tette.
  • Base64 linkekben. A linkben szereplő Base64-érték a saját szabályait követi, a + és a / helyett - és _ áll benne. Lásd: Base64 magyarázata.

Hogyan csináld a fixmint-tel

  1. Illeszd be a szöveget vagy a linket a Szöveg vagy URL mezőbe.
  2. Válaszd a Kódolás vagy a Dekódolás lehetőséget, majd a Komponens opciót egyetlen értékhez, vagy a Teljes URL opciót egy teljes címhez.
  3. Pipáld be a + használata szóközként (űrlapadatok) opciót a webes űrlapról másolt linkeknél.
  4. Linknél a Lekérdezési paraméterek, dekódolva részben látod az egyes neveket és értékeket.
  5. Másold ki az eredményt.

Gyors válaszok

Mit jelent a %20?

Egy szóközt. Bájtértéke hexadecimálisan 20.

Miért van a linkemben + jel %20 helyett?

A link valószínűleg webes űrlapról származik, ahol a + szóközt jelent. A „+ használata szóközként (űrlapadatok)” opció dekódolja.

Miért látom a %2520 jelölést a linkemben?

Az érték kétszer lett kódolva. A %20 százalékjelét újra kódolták, %25-ként. Egyszer dekódolva visszakapod a %20-at, másodszor a szóközt.

A Angol eredeti alapján, MI segítségével fordítva.

Hozzászólások

    Még nincs hozzászólás. Legyél te az első.

    Az értékelésed (nem kötelező)

    Az e-mail-címed sosem jelenik meg, és nem tároljuk.

    How to Remain Valuable When Intelligence Becomes Cheap borítójaHow to Remain Valuable When Intelligence Becomes Cheap

    224 oldal arról, hogy mely emberi, gazdasági és stratégiai előnyök maradnak ritkák akkor is, amikor az MI a legtöbb szellemi munkát elvégzi.

    $3.84Megvásárlás a GumroadonAngolul