問題タブ [html-sanitizing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
1048 参照

html - レールサニタイズが飛び出す

鬼ごっこ

次のコードがあります

サニタイズされた html が の間に表示されると予想していました<p></p>。しかし、それは生産します。

囲み<p></p>をに変更する<div></div>と、サニタイズされた html が間<div></div>に表示されます。

html をサニタイズすると、サニタイズ<p></p>された html が囲みタグから削除され、囲みタグの後に配置されるのはなぜですか?

サニタイズされた html を に表示するにはどうすればよい<p></p>ですか?

0 投票する
1 に答える
492 参照

ruby-on-rails - HTML サニタイザーを使用した無効なバイト シーケンス

HTML::FullSanitizerRailsコンソールでRailsを使用してこのエラーに遭遇しました:

私が試したのは、サニタイズする前にhtmlをエンコードすることです:

動作しますが、ī文字が削除されます。誰も同じ問題を経験しましたか?

0 投票する
0 に答える
602 参照

java - Antisamy を使用して入力で HTML エンティティをエンコードしないようにする方法

DOM としてパーサー モードを使用して antisamy1.5.3 を使用している場合、次のようなすべての html エンティティが .I&nbsp;に変換され&amp;nbsp;ます。この変換は必要ありません。そのような変換を回避する方法。アンチサミーのソース コードでは、この変換は ASXHTMLSerializer.getEntityREf() メソッドで行われたと思います。このエンコーディングを回避する方法を教えてください。

入力:

アンチサミーの出力 (Cleanresults.getcleanhtml())

期待される出力:

0 投票する
3 に答える
6040 参照

javascript - ブラウザを使用してjavascriptでhtml文字列をサニタイズしてhtmlを解釈する

DOM に配置する前に、タグ、属性、および値のホワイト リストを使用して HTML 文字列をサニタイズしたいと考えています。ドキュメントに dom 要素を追加するまで悪意のある JavaScript が実行されないと仮定して、安全に dom 要素を構築し、それをトラバースしてホワイト リスト フィルタを実装できますか? このアプローチに落とし穴はありますか?

0 投票する
1 に答える
1596 参照

javascript - サービスから取得した HTML 内で Angular Binding Expression を使用できますか?

angularサービスによって取得されたmongo dbからのhtmlスニペットがあります。この HTML スニペットは、ng-bind-htmlngSanitize のディレクティブを使用してページでサニタイズされます。HTMLスニペット内の式をページにバインドする方法を知りたいので、htmlをバインドすると、バインディング式がスニペット内で実行されます。たとえば、html スニペットがバインドされる div は次のとおりです。

これがサービスからプルされる実際のスニペットです。

そして、私の単純なコントローラーは次のとおりです。

したがって、実際に期待される結果は html になります。

なぜヘロ!!! とても素敵なバインディング

ただし、中括弧を使用して元の html を取得します。私はこれを機能させようとしてここに立っているので、どんなアイデアでも役に立ちます。


更新: したがって、チャンデルマニが述べたように、コンパイル サービスについて読み、それらをディレクティブと共に使用した後、私は啓発され、混乱しています。$compile を使用するときの AngularJS チームによる「ベスト プラクティス」の方法は、http://docs.angularjs.org/api/ng/service/ $compile に記載されているように、ディレクティブ定義オブジェクト (DDO) 内で使用することです。わかりましたので、DDO を作成しましたが、DDO の compile: メソッドに何が入るのか混乱しています。これが私がこれまでに持っているものです:

0 投票する
1 に答える
658 参照

ruby-on-rails - 非 HTML タグをプレーン テキストでエスケープする (プレーン テキストを HTML に変換する)

<pre>Rails を使用して、プレーン テキストを取得して HTML として表示する必要がありますが、形式が変わるため、タグを使用したくありません。