ASP.NET Core名稱空間System.Text.Encodings.Web介紹
System.Text.Encodings.Web
空間包含表示 Web 編碼器的基類、表示 HTML、 和 Url 字元編碼的子類,以及表示僅允許編碼特定字元、字元範圍或碼位的篩選器的類。
[ 定義來自 microsoft ]
該名稱空間有五個類,用於不同物件的編碼處理。
五個類
HtmlEncoder | 表示 HTML 字元編碼。 |
ScriptEncoder | 表示 JavaScript 字元編碼。 |
TextEncoder | Web 編碼器的基類。 |
TextEncoderSettings | 表示僅允許特定 Unicode 碼位的篩選器。 |
UrlEncoder | 表示 URL 字元編碼。 |
HtmlEncoder
HtmlEncoder 與HtmlEncoder.Default 的方法有以下幾種
Create、Default、Equals、ReferenceEquals
具體為
我們一般只用到 HtmlEncoder.Default.Encode()
HtmlEncoder.Default.Encode()的用法
微軟官方的定義
使用HtmlEncoder.Default.Encode
防止惡意輸入(即 JavaScript)損害應用
也就是說,會對一些符號、中文等進行編碼,使它不能按照原來的形式出現。
編碼
假設有一個新聞系統,使用者可以在新聞文章下評論,如果使用者評論時發www.cppcns.com
若是系統不加以處理,那麼當其他使用者開啟這篇新聞時,會載入這個人的評論,就會執行這段惡意的 javascript 程式碼。
tmlEncoder.Default.Encode 可以把字串中的 特殊符號(包括中文) 轉為編碼
示客棧例
新建一個asp.net core 應用
在控制器加入以下方法
編譯執行,開啟檢視
可以看到,檢視 a 的字串按照原先的文字進行輸出。而檢視 b 編碼後的文字會編碼特殊符號。
有編碼就有解碼,在這裡不再贅述。
其它四個類的使用基本一致,這裡就不再贅述
請參考
https://docs.microsoft.com/zh-cn/dotnet/api/system.text.encodings.web?view=netcore-2.0
到此這篇關於ASP.NET Core名稱空間System.Text.Encodings.Web介紹的文章就介紹到這了。希望對大家的學習有所幫助,也希望大家多多支援我們。程式設計客棧