ASP.NET Core 编码、web编码、网页编码System.Text.Encodings.Web

简介: ASP.NET Core 编码、web编码、网页编码System.Text.Encodings.Web

System.Text.Encodings.Web


空间包含表示 Web 编码器的基类、表示 HTML、JavaScript 和 Url 字符编码的子类,以及表示仅允许编码特定字符、字符范围或码位的筛选器的类。

    [ 定义来自 microsoft ]

该命名空间有五个类,用于不同对象的编码处理。


五个类



HtmlEncoder

表示 HTML 字符编码。

JavaScriptEncoder

表示 JavaScript 字符编码。

TextEncoder

Web 编码器的基类。

TextEncoderSettings

表示仅允许特定 Unicode 码位的筛选器。

UrlEncoder

表示 URL 字符编码。


 

HtmlEncoder


HtmlEncoderHtmlEncoder.Default 的方法有以下几种

Create、Default、Equals、ReferenceEquals

具体为


微信图片_20220426114456.png

 

我们一般只用到 HtmlEncoder.Default.Encode()


HtmlEncoder.Default.Encode() 的用法



微软官方的定义

使用HtmlEncoder.Default.Encode 防止恶意输入(即 JavaScript)损害应用

也就是说,会对一些符号、中文等进行编码,使它不能按照原来的形式出现。


编码


假设有一个新闻系统,用户可以在新闻文章下评论,如果用户评论时发表了一段恶意的 javascript 代码。

若是系统不加以处理,那么当其他用户打开这篇新闻时,会加载这个人的评论,就会执行这段恶意的 javascript 代码。

tmlEncoder.Default.Encode 可以把字符串中的 特殊符号(包括中文) 转为编码


示例


新建一个asp.net core 应用

在控制器加入以下方法


微信图片_20220426114503.png


编译运行,打开视图


微信图片_20220426114508.png


可以看到,视图 a 的字符串按照原先的文字进行输出。而视图 b 编码后的文字会编码特殊符号。


有编码就有解码,在这里不再赘述。


其它四个类的使用基本一致,这里就不再赘述

请参考

https://docs.microsoft.com/zh-cn/dotnet/api/system.text.encodings.web?view=netcore-2.0

 

相关文章
|
5月前
|
中间件 Go
Golang | Gin:net/http与Gin启动web服务的简单比较
总的来说,`net/http`和 `Gin`都是优秀的库,它们各有优缺点。你应该根据你的需求和经验来选择最适合你的工具。希望这个比较可以帮助你做出决策。
200 35
|
9月前
|
开发框架 .NET 开发者
简化 ASP.NET Core 依赖注入(DI)注册-Scrutor
Scrutor 是一个简化 ASP.NET Core 应用程序中依赖注入(DI)注册过程的开源库,支持自动扫描和注册服务。通过简单的配置,开发者可以轻松地从指定程序集中筛选、注册服务,并设置其生命周期,同时支持服务装饰等高级功能。适用于大型项目,提高代码的可维护性和简洁性。仓库地址:<https://github.com/khellang/Scrutor>
214 5
|
5月前
|
人工智能 搜索推荐 IDE
突破网页数据集获取难题:Web Unlocker API 助力 AI 训练与微调数据集全方位解决方案
本文介绍了Web Unlocker API、Web-Scraper和SERP API三大工具,助力解决AI训练与微调数据集获取难题。Web Unlocker API通过智能代理和CAPTCHA绕过技术,高效解锁高防护网站数据;Web-Scraper支持动态内容加载,精准抓取复杂网页信息;SERP API专注搜索引擎结果页数据抓取,适用于SEO分析与市场研究。这些工具大幅降低数据获取成本,提供合规保障,特别适合中小企业使用。粉丝专属体验入口提供2刀额度,助您轻松上手!
272 2
|
6月前
|
移动开发 前端开发 API
鸿蒙web加载本地网页资源异常
在鸿蒙NEXT Api 12中,为解决Web组件加载本地资源(如图片、CSS等)失败的问题,我们采用拦截机制。具体步骤如下: 1. **替换路径**:通过正则表达式将HTML和CSS中的资源路径替换为带有标记的URL(如`http://local`),以便后续识别。 2. **拦截与返回**:在资源加载时,拦截带有标记的URL,读取对应的本地文件并返回给Web组件。此过程确保了本地资源能正确加载和显示。 代码实现包括路径替换、资源拦截及响应构建,确保Web页面能够顺利加载本地资源。
315 7
|
9月前
|
运维 前端开发 C#
一套以用户体验出发的.NET8 Web开源框架
一套以用户体验出发的.NET8 Web开源框架
243 7
一套以用户体验出发的.NET8 Web开源框架
|
8月前
|
开发框架 数据可视化 .NET
.NET 中管理 Web API 文档的两种方式
.NET 中管理 Web API 文档的两种方式
133 14
|
9月前
|
开发框架 算法 中间件
ASP.NET Core 中的速率限制中间件
在ASP.NET Core中,速率限制中间件用于控制客户端请求速率,防止服务器过载并提高安全性。通过`AddRateLimiter`注册服务,并配置不同策略如固定窗口、滑动窗口、令牌桶和并发限制。这些策略可在全局、控制器或动作级别应用,支持自定义响应处理。使用中间件`UseRateLimiter`启用限流功能,并可通过属性禁用特定控制器或动作的限流。这有助于有效保护API免受滥用和过载。 欢迎关注我的公众号:Net分享 (239字符)
174 1
|
9月前
|
开发框架 缓存 .NET
GraphQL 与 ASP.NET Core 集成:从入门到精通
本文详细介绍了如何在ASP.NET Core中集成GraphQL,包括安装必要的NuGet包、创建GraphQL Schema、配置GraphQL服务等步骤。同时,文章还探讨了常见问题及其解决方法,如处理复杂查询、错误处理、性能优化和实现认证授权等,旨在帮助开发者构建灵活且高效的API。
212 3
|
开发框架 前端开发 .NET
ASP.NET Core 核心特性学习笔记「下」
ASP.NET Core 核心特性学习笔记「下」
|
开发框架 前端开发 中间件
ASP.NET Core 核心特性学习笔记「上」
ASP.NET Core 核心特性学习笔记「上」