Jestem projektowania sieci Web API, która zwraca JSON jako content-type, ciało odpowiedź może zawierać znaki takie jak '
, "
, <
i >
, są one ważne postacie w JSON. Tak więc moje pytanie brzmi: czy powinienem kodować HTML dla mojego ciała odpowiedzi Web API, czy powinienem zostawić to zadanie klientowi HTML, który pobiera mój Web API?Mam HTML odpowiedź kodowanie moim Web API
Odpowiedz
Nie; nie wolno Ci.
Należy unikać danych tylko wtedy, gdy łączymy je w ustrukturyzowany format.
Jeśli zwrócisz JSON jak { "text": "Content by X & Y" }
, każdy, kto odczyta ten JSON, zobaczy literalny tekst &
.
Działa to poprawnie tylko w przypadku bardzo zepsutych klientów, którzy łączą się bezpośrednio z ich HTML bez ucieczki.
W skrócie:
Nigdy uciec tekst wyjątkiem sytuacji, gdy masz zamiar go wyświetlić
Witajcie, doceniam waszą jasną odpowiedź! kiedy zadawałem to pytanie, podświadomie miałem wrażenie, że może nie powinienem. Dziękuję za wyjaśnienie tego! – Shuping
Jakiej platformy używasz? Na przykład Node.js można użyć polecenia restify, aby dobrze sobie z tym poradzić. Nie musisz jawnie kodować danych. W związku z tym należy znaleźć odprężające ramy lub komponenty, które mogą Ci pomóc.
Co jeśli klient nie ma nic wspólnego z HTML? – SLaks