Spring til hovedindhold

Hvornår skal man bruge URL-kodning, HTML Escaping og JSON Escaping

Af Converty Team

Lær, hvornår URL-kodning, HTML-escape og JSON-escape løser forskellige tekstsikkerhedsproblemer, før du indsætter indhold i en sti, side eller datastykke.

Hvornår skal man bruge URL-kodning, HTML Escaping og JSON Escaping

At undslippe er let at tage fejl, fordi flere forskellige job ligner hinanden på afstand. Du har tekst, teksten indeholder specialtegn, og et andet system skal modtage den uden at misforstå den. Fejlen er at antage, at én form for flugt virker overalt.

URL-kodning, HTML-escape og JSON-escape løser forskellige problemer. Et mellemrum i en forespørgselsstreng er ikke det samme problem som et <-tegn i gengivet HTML eller et anførselstegn inde i en JSON-streng. Værktøjet Case / Slug / Escape hjælper ved at holde disse output tæt på hinanden, men den nyttige del er at vide, hvilket output der hører til den destination, du forbereder.

URL-kodning er til URL'er og forespørgselsværdier

Brug URL-kodning, når tekst går ind i en URL-komponent, især en forespørgselsparameter eller en værdi, der kan indeholde mellemrum, tegnsætning eller ikke-stisikre tegn.

Antag, at et supportlink skal indeholde et søgeudtryk såsom pricing & billing. Indsættelse af denne sætning direkte i en URL kan ændre, hvordan URL'en fortolkes, fordi & allerede har betydning i en forespørgselsstreng. URL-kodning forvandler teksten til en form, der kan bevæge sig inde i URL'en uden at blive forvekslet med URL-syntaks.

Dette er forskelligt fra at oprette en slug. En slug forvandler normalt en titel til et læsbart stisegment, såsom pricing-and-billing. URL-kodning bevarer den oprindelige værdi mere direkte til transport.

HTML-escape er for tekst, der vil blive gengivet i HTML

Brug HTML-escape, når tekst skal vises som tekst i en HTML-kontekst, ikke blive markering.

Hvis et kodeeksempel indeholder <button>, og du ønsker, at læserne skal se disse tegn, skal browseren escapede tegnene. Ellers kan det fortolke dem som et faktisk element. HTML-escape handler om at forhindre tekst i at blive læst som HTML-syntaks på steder, hvor indholdet skal forblive synlig tekst.

Det har betydning for dokumentation, CMS-felter, changelogs og produktkopiering. Det er især relevant, når kildeteksten indeholder eksempler på markup, uddrag eller brugergenererede værdier, som ikke bør blive en del af sidestrukturen.

JSON-escape er for strengværdier inde i JSON

Brug JSON-escape, når tekst skal sidde sikkert inde i en JSON-streng.

Et anførselstegn er harmløst i normal prosa, men inde i en JSON-streng kan det lukke strengen tidligt. En ny linje kan også have brug for en repræsentation, der holder JSON gyldig. JSON-escape handler om at bevare værdien, mens den omgivende JSON holdes parsebar.

Dette vises ofte, når teams deler API-eksempler, konfigurationsuddrag, analytiske nyttelaster eller eksempeldata. Hvis næste trin er en bredere oprydning af strukturerede data, skal du parre denne artikel med How to Format JSON Before Sharing an API Eksempel og JSON / YAML / TOML Converter.

Vælg escape baseret på destinationen

Den enkleste regel er destination først.

BestemmelsesstedBrugeHvorfor
URL-forespørgselsværdi eller URL-komponentURL-kodningForhindrer, at tekst bliver fortolket som URL-syntaks
Synlig tekst inde i HTMLHTML undslipperForhindrer, at specialtegn bliver markering
Strengværdi inde i JSONJSON undslipperHolder citater, skråstreger og linjeskift parseable
Offentlig artikel eller rutetitelSlug generationOpretter læsbar stitekst i stedet for at bevare hvert tegn

Converty hjælper, fordi du kan indsætte én gang og sammenligne output uden at åbne en separat encoder for hvert tilfælde. Det holder jobbet proportionalt. Du bygger ikke en pipeline; du forbereder én tekstværdi for det sted, den skal hen.

Åbn værktøjet Case / Slug / Escape, når du skal beslutte, om det næste output skal være en slug, en URL-kodet værdi, HTML-sikker tekst eller en JSON-sikker streng.

Du kan måske også lide