2016-04-22 9 views
1

mongoDBを使用してデータを格納するSpringBootベースのMVCアプリケーションで作業しています。私はテンプレートエンジンとしてthymeleafを使用しています。シナリオの1つでは、ユーザーはあるフォームに表示されたフォームを入力する必要があります。SpringBootフォームを使用してmongodbにHTMLコンテンツを保存する方法

私が直面している問題は、ユーザーがHTMLタグを使用してフォームのtextArea(コードスニペット、表形式など)に書き込んでいる間にデータをフォーマットできることです。しかし、そのテキストを表示しているとき、htmlは解析されておらず、そのまま表示されます。例について

:</B >がストリングとして表示されなければならないが、</B >のみ<B>文字列として表示されている <B>ストリング。ページのソースコードを確認すると、htmlタグがエンコードされた形で表示されます。すなわち<は&

誰かがあなたがth:utextで出力エスケープされていないテキストができ

答えて

1

を助けてください。 official turorial

から、我々はThymeleafはそれらをエスケープする私たちのXHTMLタグを尊重しないようにしたい場合は、我々は別の属性を使用する必要があります:th:utext(「エスケープ文字」用):

<p th:utext="#{home.welcome}">Welcome to our grocery store!</p> 

このチュートリアルでは、home.welcomeがhtmlタグ付き文字列であると仮定しています。
home.welcome=Welcome to our <b>fantastic</b> grocery store!

それはHTML安全は、特定のユースケースのためには何でも)唯一の安全は、データベース(および<script/>タグなどの無おそらく悪意のあるコード)に格納されるように、これは非常に慎重な検証が必要であることは言うまでもないです。

+0

ありがとう@sthzg。あなたはその日を救った – Sumit

関連する問題