語言

AntiXssEncoder.XmlEncode(String) 方法

定義

將指定的字串編碼以用於 XML 屬性。

public:
 static System::String ^ XmlEncode(System::String ^ input);
public static string XmlEncode(string input);
static member XmlEncode : string -> string
Public Shared Function XmlEncode (input As String) As String

參數

input
String

要編碼的字串。

傳回

那個編碼字串。

備註

此方法編碼除安全清單中字元外的所有字元。 字元以 &#DECIMAL; 符號編碼。

Note

在新增字串前,先在結果字串周圍加上雙引號(“ ”)或單引號(' ')。

下表列出預設的安全字元。 所有字元均來自 Unicode C0 控制項及基本拉丁 字元範圍,除非在描述欄中註明。

角色 Description
A-Z 大寫拉丁字母
a-z 小寫拉丁字母
0-9 數字
(太空) 空間
! 驚嘆號
# 數字符號、雜湊值
$ 美元符號
% 百分比符號
( ) 括號
* Asterisk
+ 加號
, 逗號
- 連字號,負號
. 期間
/ 斜線
: 冒號
; 分號
= 等號
? 問號
@ 商業廣告
[ ] 方括號
\ 反斜線
^ 插入號
_ 底線
` 莊重口音
{ } 牙套、捲括號
| 垂直線
~ 波浪號
0x00A1 - 0x00AC Unicode C1 控制與 Latin-1 補充 字元範圍中介於 0x00A1(161 位小數)至 0x00AC(172 位)之間的特殊字元。 當 useNamedEntities 為 時 true,該範圍內的字元被編碼。
0x00AE - 0x00FF Unicode C1 控制與拉丁語 1 補充 字元範圍中介於 0x00AE(174 位小數)至 0x00FF(255 位)之間的特殊字元。 當 useNamedEntities 為 時 true,該範圍內的字元被編碼。
0x0100 - 0x017F 字元介於0x0100(小數256)至0x017F(383)。 (Unicode 拉丁語擴展 A 字元範圍。)
0x0180 - 0x024F 字元介於0x0180(小數384)至0x024F(591)之間。 (Unicode 拉丁語擴展 B 字元範圍。)
0x0250 - 0x02AF 字元介於0x0250(小數點數592)至0x02AF(687位)。 (Unicode IPA 擴充 字元範圍。)
0x02B0 - 0x02FF 字元介於0x02B0(688位小數)至0x02FF位(767位)。 (Unicode 間 距修飾字母 的字元範圍。)
0x0300 - 0x036F 字元介於0x0300(小數768)至0x036F(879)。 (Unicode 結合變音符號 字元範圍。)

下表列出輸入及相應編碼輸出的範例。

輸入 產出
alert('XSS Attack!'); alert('XSS Attack!');
<script>alert('XSS Attack!');</script> &lt;script&gt;alert(&apos;XSS Attack!&apos;);&lt;/script&gt;
alert('XSSあAttack!'); alert(&apos;XSS&#12354;Attack!&apos;);
user@contoso.com user@contoso.com
"Anti-Cross Site Scripting Namespace" &quot;Anti-Cross&#32;Site&#32;Scripting&#32;Namespace&quot;

要自訂保險箱清單,請呼叫該 MarkAsSafe 方法。

適用於