20.15 ESCAPEファンクション
このファンクションはJavaScriptで使用されるテキストをエスケープします。このファンクションは、文字のエスケープにAPEX_ESCAPE.JS_LITERAL
を使用し、他のAPIへの参照を提供します。
注意:
このファンクションは、HTMLタグがJavaScriptオブジェクトの属性の割当てに悪影響を与えないようにするとともに、HTMLタグ「<」および「>」をエスケープします。その他のHTMLタグはエスケープされないため、XSS(クロスサイト・スクリプティング)攻撃を確実に防ぐには、SYS.HTF.ESCAPE_SC
をコールして、HTMLページに文字列を差し込む際に、埋め込まれたJavaScriptコードが実行されるのを防ぐ必要もあります。
構文
APEX_JAVASCRIPT.ESCAPE (
p_text IN VARCHAR2)
RETURN VARCHAR2;
パラメータ
表20-14 ESCAPEのパラメータ
パラメータ | 説明 |
---|---|
|
エスケープされるテキスト。 |
例
onloadバッファにいくつかのJavaScriptコードを追加します。p_item.attribute_01の値は、まず、XSS攻撃を防ぐためにhtf.escape_scでエスケープし、引用符などの特殊文字がJavaScriptコードに悪影響を与えないようにapex_javascript.escapeでエスケープします。
apex_javascript.add_onload_code (
'var lTest = "'||apex_javascript.escape(sys.htf.escape_sc(p_item.attribute_01))||'";'||chr(10)||
'showMessage(lTest);' );
親トピック: APEX_JAVASCRIPT