AntiXssEncoder.HtmlAttributeEncode(String, TextWriter) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
编码并输出用于 HTML 特性的指定字符串。
protected public:
override void HtmlAttributeEncode(System::String ^ value, System::IO::TextWriter ^ output);
protected internal override void HtmlAttributeEncode (string value, System.IO.TextWriter output);
override this.HtmlAttributeEncode : string * System.IO.TextWriter -> unit
Protected Friend Overrides Sub HtmlAttributeEncode (value As String, output As TextWriter)
参数
- value
- String
要编码的字符串。
- output
- TextWriter
用于输出字符串的文本编写器。
注解
此方法对除安全列表中的字符以外的所有字符进行编码。 使用表示法对 &#DECIMAL;
字符进行编码。
备注
将双引号 (") 或单引号 ("") 字符串",然后再将其添加到页面。
下表列出了默认安全字符。 除非在"说明"列中进行说明,否则所有字符都来自 Unicode C0 控件 和基本拉丁字符范围。
字符 | 说明 |
---|---|
A-Z | 大写拉丁字母字符 |
a-z | 小写拉丁字母字符 |
0-9 | 数字 |
! | 感叹 号 |
# | 数字符号、哈希 |
$ | 美元符号 |
% | 百分号 |
( ) | 括号 |
* | 星号 |
+ | 正号 |
, | 逗号 |
- | 连字符,减号 |
. | 句点、句点、完全停止 |
/ | 斜杠 |
: | 冒号 |
; | 分号 |
= | 等号 |
? | 问号 |
@ | 商业签名 |
[ ] | 方括号 |
\ | 反斜杠 |
^ | 西文插入记号 |
_ | 强调 |
` | 主题主题 |
{ } | 大括号、大括号 |
| | 垂直线 |
~ | 波形符 |
0x00A1 - 0x00AC | Unicode C1 控件0x00A1 (161 位) 和0x00AC (172 位) 和 Latin-1 补充 字符范围中的特殊字符。 |
0x00AE - 0x00FF | Unicode C1 控件0x00AE (174 位) 和0x00FF (255 位) 与 Latin-1 补充 字符范围之间的特殊字符。 |
0x0100 - 0x017F | 小数0x0100 (256 位) 0x017F (383 位) 。 (Unicode Latin-Extended-A 字符范围.) |
0x0180 - 0x024F | 介于 384 位0x0180 (384 位) 到0x024F (591 位) 。 (Unicode Latin-Extended-B 字符范围.) |
0x0250 - 0x02AF | 小数0x0250 (592 位) 0x02AF (687 位) 。 (Unicode IPA 扩展字符 范围.) |
0x02B0 - 0x02FF | 介于 688 位0x02B0 (688 位) 到0x02FF (767 位) 。 (Unicode 间距修饰符字母字符 范围.) |
0x0300 - 0x036F | 小数0x0300 (768 位) 到 879 0x036F (之间的) 。 (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 方法。