[解決済み] 危険なSetInnerHTMLの安全な代替手段
2023-04-07 05:13:08
質問
私のサイト(Reactを使用している)で動的なブログを持ちたいと思います。当初、私は投稿を生のHTMLでデータベースに保存し、dangerouslySetInnerHTMLを使用してコンテンツを生成するつもりでした。しかし、私はセキュリティの影響を懸念しています。私のアプリには機密データはありませんが、私はXSSに十分に精通しておらず、私のアプリを開放するすべての危険性を知っていません。
私のアプリ内でブログ ページを動的に読み込むための、パフォーマンスと安全性の高い方法があるかどうか知りたいのです。私のアプリ内で https://github.com/odysseyscience/react-router-proxy-loader を使用することは有用でしょうか?私のアプリの残りの部分とは別にブログ投稿JSXのフォルダを持ち、これを使ってロードします(確かに、私はreact-router-proxy-loaderがどのように動作するのか分かりません)。
私は提案にオープンです。
どのように解決するのですか?
XSS が主な関心事である場合、あなたは
DOMPurify
を使って、DOM に挿入する前に HTML をサニタイズすることができます。
dangerouslySetInnerHTML
. ちょうど10K minifiedです。
で、Nodeでも動く。
関連
-
[解決済み】React 17で動作するEnzymeアダプターはどれですか?
-
[解決済み】Reactでclsxを使用する方法
-
[解決済み] react router dom v4でwebpack dev serverを構成する方法は?
-
[解決済み] ReactjsのEsLintの "react / jsx-props-no-spreading "エラーを無効化する。
-
React はエラー TypeError を報告します。未定義のプロパティ 'XX' を読み取ることができない、問題は解決されました。
-
[解決済み] React Router - バージョン更新後のwithRouterでTypescriptエラーが発生する。
-
[解決済み] 拡張子.tsと.tsxの違いは何ですか?どちらもreactのタイプスクリプトファイルの拡張子として使用されます。では、どこで使うべきなのでしょうか?
-
[解決済み] React JSXのforEach()でHTMLが出力されない
-
[解決済み] React-routerのURLを更新したり、手動で書き込んだりするとうまくいかない
-
[解決済み】React.js:Set innerHTMLとdangerouslySetInnerHTMLを比較する。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】React Propsが定義されていません。
-
[解決済み] ReactJS giving error Uncaught TypeError: Super expression は null か関数でなければならず、undefined ではありません。
-
[解決済み] Next.jsでWebSocketを利用する
-
[解決済み] ReactJS: Warning: setState(...): 既存の状態遷移の間に更新することはできません
-
[解決済み] React-Router 4 キャッチオールルート
-
[解決済み] componentWillReceiveProps は名称が変更されました。
-
[解決済み] validateDOMNesting警告React
-
[解決済み] react-router-domを使用する際に「Function components cannot be given refs」を回避する方法は?
-
[解決済み] reactのuseStateフックでコールバックを使う方法 [重複]。
-
[解決済み] Reactプロジェクトに.envファイルを追加する