Ugrás a fő tartalomhoz

Mikor kell használni az URL-kódolást, a HTML-kilépést és a JSON-kilépést

Szerző: Converty Team

Ismerje meg, hogy az URL-kódolás, a HTML-kihagyás és a JSON-kilépés hogyan oldja meg a különböző szövegbiztonsági problémákat, mielőtt tartalmat illeszt be egy elérési útba, oldalba vagy adatrészletbe.

Mikor kell használni az URL-kódolást, a HTML-kilépést és a JSON-kilépést

A szökést könnyű tévedni, mert több különböző munka távolról nézve hasonlónak tűnik. Önnek szövege van, a szöveg speciális karaktereket tartalmaz, és egy másik rendszernek félreértés nélkül kell fogadnia. Az a hiba, hogy azt feltételezzük, hogy egyfajta menekülés mindenhol működik.

Az URL-kódolás, a HTML-kihagyás és a JSON-kilépés különféle problémákat old meg. A szóköz a lekérdezési karakterláncban nem ugyanaz a probléma, mint egy < karakter a renderelt HTML-ben vagy egy idézőjel a JSON-karakterláncban. A Case / Slug / Escape eszköz segít egymáshoz közel tartani ezeket a kimeneteket, de hasznos tudnivaló, hogy melyik kimenet tartozik az előkészített célhoz.

Az URL-kódolás az URL-ekhez és a lekérdezési értékekhez való

Használjon URL-kódolást, ha szöveg kerül egy URL-összetevőbe, különösen egy lekérdezési paraméter vagy olyan érték, amely szóközöket, írásjeleket vagy nem elérési útra nem alkalmas karaktereket tartalmazhat.

Tegyük fel, hogy a támogatási linknek tartalmaznia kell egy keresési kifejezést, például pricing & billing. Ha ezt a kifejezést közvetlenül egy URL-be illeszti be, az megváltoztathatja az URL értelmezését, mivel a & már rendelkezik jelentéssel a lekérdezési karakterláncon belül. Az URL-kódolás a szöveget olyan formává alakítja, amely az URL-en belül haladhat anélkül, hogy összekeverné az URL-szintaxist.

Ez eltér a slug létrehozásától. A slug általában a címet egy olvasható útvonalszakasszá alakítja, például pricing-and-billing. Az URL-kódolás közvetlenül megőrzi az eredeti értéket a szállításhoz.

A HTML-kilépés a HTML-ben megjelenített szövegre vonatkozik

Használjon HTML-kihagyást, ha a szövegnek szövegként kell megjelennie egy HTML-környezetben, nem pedig jelöléssé kell válnia.

Ha egy kódpélda tartalmazza a <button> kódot, és azt szeretné, hogy az olvasók lássák ezeket a karaktereket, a böngészőnek meg kell változtatnia a karaktereket. Ellenkező esetben tényleges elemként értelmezheti őket. A HTML menekülés azt jelenti, hogy megakadályozza a szöveg HTML szintaxisként történő olvasását olyan helyeken, ahol a tartalomnak látható szövegnek kell maradnia.

Ez számít a dokumentációban, a CMS-mezőkben, a változásnaplókban és a termékmásolatban. Ez különösen fontos, ha a forrásszöveg jelölésekre, töredékekre vagy a felhasználó által generált értékekre példákat tartalmaz, amelyek nem válhatnak az oldalszerkezet részévé.

A JSON-kihagyás a JSON-on belüli karakterlánc-értékekre vonatkozik

Használjon JSON-kihagyást, ha a szövegnek biztonságosan kell lennie egy JSON-karakterláncban.

Az idézőjel a normál prózában ártalmatlan, de a JSON-karakterláncon belül korán bezárhatja a karakterláncot. Az újsornak olyan ábrázolásra is szüksége lehet, amely megőrzi a JSON érvényességét. A JSON-megszökés az érték megőrzéséről szól, miközben a környező JSON-t értelmezhetővé teszi.

Ez gyakran megjelenik, amikor a csapatok API-példákat, konfigurációs kódrészleteket, elemzési hasznos adatokat vagy mintaadatokat osztanak meg. Ha a következő lépés a szélesebb körű strukturált adatok tisztítása, párosítsa ezt a cikket a JSON formázása az API-példa megosztása előtt és a JSON/YAML/TOML konverter elemmel.

Válassza ki a kilépést a cél alapján

A legegyszerűbb szabály az első a cél.

Rendeltetési helyHasználatMiért
URL-lekérdezés értéke vagy URL-összetevőURL kódolásMegakadályozza, hogy a szöveget URL-szintaxisként értelmezzék
Látható szöveg a HTML-benHTML menekülésMegakadályozza, hogy a speciális karakterek jelölésekké váljanak
Karakterlánc értéke a JSON-on belülJSON menekülésElemezhetővé teszi az idézőjeleket, a perjeleket és a sortöréseket
Nyilvános cikk vagy útvonal címeSlug generációOlvasható útvonalszöveget hoz létre, nem pedig minden karaktert megőriz

A konvertálás segít, mert egyszer beillesztheti és összehasonlíthatja a kimeneteket anélkül, hogy minden egyes esethez külön kódolót nyitna meg. Ezzel arányos a munka. Ön nem csővezetéket épít; készít egy szövegértéket arra a helyre, ahová el kell kerülnie.

Nyissa meg a Case / Slug / Escape eszközt, amikor el kell döntenie, hogy a következő kimenet slug, URL-kódolt érték, HTML-biztonságos szöveg vagy JSON-biztos karakterlánc legyen.

Ez is érdekelhet