ユーザー入力のクライアント側をサニタイズする方法は知っていますが、サーバー側でも行います。それを行う適切な場所は を使用していることは知っていますが、これまでのところ、タグや SQL インジェクションなどの他の潜在的な有害なコンテンツに対してchangeset
適切に行う方法の例を見つけることができません。<script></script>
ユーザーが HTML コンテンツを変更してその HTML をデータベースに保存できるようにしたいので、標準の検証を使用できずraw
、テンプレートに HTML を表示します。誰かが私に例を挙げてもらえますか?
質問する
2333 次
1 に答える
3
phoenix_html
ライブラリは、デフォルトでユーザー入力をサニタイズします。
<%= "<script>alert("hi")</script>" %>
次のように表示されます。
<script>alert("hi")</script>
これはraw/1でオーバーライドする必要があります:
<%= raw "<script>alert("hi")</script>" %>
として表示されます
<script>alert("hi")</script>
これを自分で (たとえば、EEx テンプレートの外部で) 行いたい場合は、html_escape/1を使用できます。
于 2015-09-17T11:43:47.773 に答える