Aracılığıyla paylaş


AntiXssEncoder.HtmlEncode Yöntem

Tanım

Belirtilen dizeyi HTML biçimlendirmesinde metin olarak kullanılacak şekilde kodlar.

Aşırı Yüklemeler

HtmlEncode(String, Boolean)

Belirtilen dizeyi HTML biçimlendirmesinde metin olarak kullanılmak üzere kodlar ve isteğe bağlı olarak, HTML 4,0 adlı varlıkların kullanılıp kullanılmayacağını belirtir.

HtmlEncode(String, TextWriter)

Belirtilen dizeyi HTML işaretlemesinde metin olarak kullanmak üzere kodlar ve belirtilen metin yazıcısını kullanarak dizeyi çıkış olarak verir.

HtmlEncode(String, Boolean)

Belirtilen dizeyi HTML biçimlendirmesinde metin olarak kullanılmak üzere kodlar ve isteğe bağlı olarak, HTML 4,0 adlı varlıkların kullanılıp kullanılmayacağını belirtir.

public:
 static System::String ^ HtmlEncode(System::String ^ input, bool useNamedEntities);
public static string HtmlEncode (string input, bool useNamedEntities);
static member HtmlEncode : string * bool -> string
Public Shared Function HtmlEncode (input As String, useNamedEntities As Boolean) As String

Parametreler

input
String

Kodlanacak dize.

useNamedEntities
Boolean

truebelirli karakter kodlamaları için HTML 4,0 adlı varlıkları kullanmak için; falseyalnızca & #DECIMAL; gösterimini kullanarak kodlamak için.

Döndürülenler

String

Kodlanmış dize.

Açıklamalar

Bu yöntem, güvenli listede olanlar hariç tüm karakterleri kodluyor. Karakterler, gösterim kullanılarak kodlanır &#DECIMAL; .

Not

Bir sayfaya eklemeden önce sonuçtaki dizenin etrafında çift tırnak işaretleri ("") veya tek tırnak işaretleri (' ') koyun.

Aşağıdaki tabloda varsayılan güvenli karakterler listelenmektedir. Açıklama sütununda belirtilmediği müddetçe, tüm karakterler Unicode C0 denetimleri ve temel Latin karakter aralığıdır.

Karakterler Açıklama
A-Z Büyük Latin alfabetik karakterleri
a-z Küçük Latin alfabetik karakterleri
0-9 Sayılar
(Alan) Alan
! Ünlem işareti
# Sayı işareti, karma
$ Dolar işareti
% Yüzde işareti
( ) Parantez
* Yıldız işareti
+ Artı işareti
, Virgül
- Kısa çizgi, eksi
. Nokta, tam durdurma
/ Eğik çizgi
: İki nokta üst üste
; Noktalı virgül
= Eşittir işareti
? Soru işareti
@ Ticari:
[ ] Köşeli ayraçlar
\ Ters eğik çizgi
^ Şapka
_ Alt çizgi
` Vurgu vurgusu
{ } Küme ayraçları, küme ayraçları
| Dikey çizgi
~ Tilde
0x00A1 - 0x00AC Unicode C1 denetimleri 0x00A1 Latin-1 Ek karakter aralığından 0x00AC (172 ondalık) ile 0x00A1 (161 ondalık) arasındaki özel karakterler. Bu aralıkta yer alan karakterler olduğunda useNamedEntities kodlanmış. true
0x00AE - 0x00FF Unicode C1 Denetimlerinden 0x00AE (174 ondalık) ve 0x00FF (255 ondalık) ile Latin-1 Ek karakter aralığındaki özel karakterler. Bu aralıkta yer alan karakterler olduğunda useNamedEntities kodlanmış. true
0x0100 - 0x017F 0x0100 (256 ondalık) ile 0x017F (383 ondalık) arasındaki karakterler. (Unicode Latin-Extended-A karakter aralığı.)
0x0180 - 0x024F 0x0180 (384 ondalık) ile 0x024F (591 ondalık) arasındaki karakterler. (Unicode Latin-Extended-B karakter aralığı.)
0x0250 - 0x02AF 0x0250 (592 ondalık) ile 0x02AF (687 ondalık) arasındaki karakterler. (Unicode IPA Uzantıları karakter aralığı.)
0x02B0 - 0x02FF 0x02B0 (688 ondalık) ile 0x02FF (767 ondalık) arasındaki karakterler. (Unicode Aralık Değiştirici Harfleri karakter aralığı.)
0x0300 - 0x036F 0x0300 (768 ondalık) ile 0x036F (879 ondalık) arasındaki karakterler. (Unicode Birleştirme Aksan İşaretleri karakter aralığı.)

Aşağıdaki tabloda giriş örnekleri ve karşılık gelen kodlanmış çıkışlar liste almaktadır.

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

Güvenli listeyi özelleştirmek için yöntemini MarkAsSafe çağırma.

Şunlara uygulanır

HtmlEncode(String, TextWriter)

Belirtilen dizeyi HTML işaretlemesinde metin olarak kullanmak üzere kodlar ve belirtilen metin yazıcısını kullanarak dizeyi çıkış olarak verir.

protected public:
 override void HtmlEncode(System::String ^ value, System::IO::TextWriter ^ output);
protected internal override void HtmlEncode (string value, System.IO.TextWriter output);
override this.HtmlEncode : string * System.IO.TextWriter -> unit
Protected Friend Overrides Sub HtmlEncode (value As String, output As TextWriter)

Parametreler

value
String

Kodlanacak dize.

output
TextWriter

Dizenin çıkışını yapmak için kullanabileceğiniz metin yazıcı.

Açıklamalar

Bu yöntem, güvenli listede yer alan karakterler dışındaki tüm karakterleri kodlar. Karakterler, nota kullanılarak &#DECIMAL; kodlanmış.

Not

Bir sayfaya eklemeden önce elde edilen dizenin etrafına çift tırnak işaretleri (" ") veya tek tırnak işaretleri (' '') ekleyin.

Aşağıdaki tablo varsayılan güvenli karakterleri listeler. Açıklama sütununda not yoksa tüm karakterler Unicode C0 Denetimleri ve Temel Latin karakter aralığındandır.

Karakterler Açıklama
A-Z Büyük Latin alfabetik karakterleri
a-z Küçük Latin alfabetik karakterleri
0-9 Sayılar
(Alan) Alan
! Ünlem işareti
# Sayı işareti, karma
$ Dolar işareti
% Yüzde işareti
( ) Parantez
* Yıldız işareti
+ Artı işareti
, Virgül
- Kısa çizgi, eksi
. Nokta, tam durdurma
/ Eğik çizgi
: İki nokta üst üste
; Noktalı virgül
= Eşittir işareti
? Soru işareti
@ Ticari:
[ ] Köşeli ayraçlar
\ Ters eğik çizgi
^ Şapka
_ Alt çizgi
` Vurgu vurgusu
{ } Küme ayraçları, küme ayraçları
| Dikey çizgi
~ Tilde
0x00A1-0x00AC Unicode C1 denetimlerinden ve Latin-1 ek karakter aralığından 0x00A1 (161 ondalık) ve 0x00ac (172 ondalık) arasındaki özel karakterler. Bu aralıktaki karakterler olduğunda kodlanır useNamedEntities true .
0x00AE-0x00FF Unicode C1 denetimlerinden ve Latin-1 ek karakter aralığından 0x00ae (174 ondalık) ve 0x00ff (255 ondalık) arasındaki özel karakterler. Bu aralıktaki karakterler olduğunda kodlanır useNamedEntities true .
0x0100-0x017F 0x0100 (256 ondalık) ve 0x017F (383 ondalık) arasındaki karakterler. (Unicode Latin-genişletilmiş-bir karakter aralığı.)
0x0180-0x024F 0x0180 (384 ondalık) ve 0x024F (591 ondalık) arasındaki karakterler. (Unicode Latin-genişletilmiş-B karakter aralığı.)
0x0250-0x02AF 0x0250 (592 ondalık) ve 0x02AF (687 ondalık) arasındaki karakterler. (Unicode IPA uzantıları karakter aralığı.)
0x02B0-0x02FF 0x02B0 (688 ondalık) ve 0x02FF (767 ondalık) arasındaki karakterler. (Unicode aralığı değiştirici harfler karakter aralığı.)
0x0300-0x036F 0x0300 (768 ondalık) ve 0x036F (879 ondalık) arasındaki karakterler. ( Aksanlı parantez karakter aralığını birleştiren Unicode.)

Aşağıdaki tabloda, giriş örnekleri ve karşılık gelen kodlanmış çıktılar listelenmektedir.

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

Güvenli listeyi özelleştirmek için MarkAsSafe yöntemini çağırın.

Şunlara uygulanır