AntiXssEncoder.XmlEncode(String) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
將指定的字串編碼以用於 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;
標記法進行編碼。
注意
將雙引號放在產生的字串前面 ( "" ) 或單引號 ( ' ' ) ,然後再將它加入至頁面。
下表列出預設的安全字元。 所有字元都來自 Unicode C0 控制項和基本拉丁 字元範圍,但在 [描述] 欄中有注明。
字元 | 描述 |
---|---|
A-Z | 大寫拉丁字母字元 |
a-z | 小寫拉丁字母字元 |
0-9 | 數字 |
(空間) | Space |
! | 感歎 號 |
# | 數位記號、雜湊 |
$ | 貨幣號 |
% | 百分比符號 |
( ) | 括號 |
* | 星號 |
+ | 加號 |
, | Comma (逗號) |
- | 連字號、減號 |
. | 期間 |
/ | 斜線 |
: | 冒號 |
; | 分號 |
= | 等號 |
? | 問號 |
@ | 商業 |
[ ] | 方括弧 |
\ | 反斜線 |
^ | 插入點 |
_ | 底線 |
` | 抑音符號 |
{ } | 大括弧、大括弧 |
| | 垂直線 |
~ | 波狀符號 |
0x00A1 - 0x00AC | 0x00A1 (161 decimal) 與0x00AC 之間的特殊字元 (172 decimal) 自 Unicode C1 控制項和拉丁1補充 字元範圍。 當為時,會將此範圍中的字元編碼 useNamedEntities true 。 |
0x00AE - 0x00FF | 0x00AE (174 decimal) 與0x00FF 之間的特殊字元 (255 decimal) 自 Unicode C1 控制項和拉丁1補充 字元範圍。 當為時,會將此範圍中的字元編碼 useNamedEntities true 。 |
0x0100-0x017F | 0x0100 (256 decimal) 和 0x017F (383 decimal) 之間的字元。 (Unicode 拉丁擴充 字元範圍。 ) |
0x0180 - 0x024F | 0x0180 (384 decimal) 和 0x024F (591 decimal) 之間的字元。 (Unicode 拉丁-擴充-B 字元範圍。 ) |
0x0250 - 0x02AF | 0x0250 (592 decimal) 和 0x02AF (687 decimal) 之間的字元。 (Unicode IPA 延伸 字元範圍 ) 。 |
0x02B0 - 0x02FF | 0x02B0 (688 decimal) 和 0x02FF (767 decimal) 之間的字元。 (Unicode 間距修飾詞字母 字元範圍。 ) |
0x0300 - 0x036F | 0x0300 (768 decimal) 和 0x036F (879 decimal) 之間的字元。 (Unicode 結合變音符 號字元範圍。 ) |
下表列出輸入的範例和對應的編碼輸出。
alert('XSS Attack!'); |
alert('XSS Attack!'); |
<script>alert('XSS Attack!');</script> |
<script>alert('XSS Attack!');</script> |
alert('XSSあAttack!'); |
alert('XSSあAttack!'); |
user@contoso.com |
user@contoso.com |
"Anti-Cross Site Scripting Namespace" |
"Anti-Cross Site Scripting Namespace" |
若要自訂安全清單,請呼叫 MarkAsSafe 方法。