Ich entwerfe eine Web-API, die JSON als Inhaltstyp zurückgibt, der Antworttext könnte Zeichen wie '
, "
, <
und >
enthalten, sie sind gültige Zeichen in JSON. Also, meine Frage ist, sollte ich HTML-Encoding für meine Web-API Response Body oder sollte ich diese Aufgabe auf HTML-Client verlassen, die meine Web-API verbraucht?
Nein; du darfst nicht.
Sie dürfen Daten nur dann ausschließen, wenn Sie sie zu einem strukturierten Format verketten.
Wenn Sie JSON wie { "text": "Content by X & Y" }
zurückgeben, wird jedem, der JSON liest, der Literaltext &
angezeigt.
Es funktioniert nur für extrem beschädigte Clients, die es direkt in ihren HTML-Code verketten, ohne zu entkommen.
Kurz gesagt:
Tags und Links asp.net-web-api json html-encode