【.net/.net core】使用System.Web.HttpUtility.UrlDecode处理web请求编码问题

问题场景:将数据已JSON字符串写入请求内容后,在接收端接收数据时,数据内容为URL编码后的内容,需要先将接收的字符串数据URL解码后才可转换为数据对象

解决办法:使用System.Web.HttpUtility.UrlDecode(string s)方法对字符串进行URL解码

注:使用System.Net. WebUtility.UrlDecode(string s)解码后,中文内容为unicode编码格式,需要再次将unicode编码转换为中文,经测试System.Web.HttpUtility.UrlDecode(string s)方法可直接转换为中文

代码:

cs 复制代码
//数据类
public class Person{
    public string eid {get;set;}
    public string name {get;set;}
}

//编码字符串数据 
/*
    数据内容为[{"eid":"1214","name":"陈慧敏"},{"eid":"1189","name":"吴莎莎"},{"eid":"1218","name":"陈赟博"}]
*/
string urlCodeStr = "%5b%7b%22eid%22%3a%221214%22%2c%22name%22%3a%22%u9648%u6167%u654f%22%7d%2c%7b%22eid%22%3a%221189%22%2c%22name%22%3a%22%u5434%u838e%u838e%22%7d%2c%7b%22eid%22%3a%221218%22%2c%22name%22%3a%22%u9648%u8d5f%u535a%22%7d%5d"

//使用URL解码方法对字符串进行解码
string jsonStr = System.Web.HttpUtility.UrlDecode(urlCodeStr);

//将解码后的字符串反序列化为List<Person>集合
List<Person> personData = JsonConvert.DeserializeObject<List<Person>>(jsonStr);
相关推荐
海盗12344 天前
微软技术周报 ——2026-08-03
后端·python·microsoft·c#·.netcore
啊这啊这 六弦之首10 天前
.NET Core跨平台的奥秘[中篇]:复用之殇
.netcore
心念枕惊11 天前
.NET CORE 授权进阶-角色、策略与动态权限实现
java·前端·.netcore
完美火龙篇 四月的友12 天前
通俗易懂,什么是.NET?什么是.NET Framework?什么是.NET Core?
.net·.netcore
时代的狂1 个月前
如何理解 C# 的 async 和 await
c#·.netcore·async·await
尼米棕熊1 个月前
.NET CORE认证模块-注册方案与请求认证探究
.netcore
鸠摩智首席音效师2 个月前
如何在 macOS 上安装 .NET Core ?
macos·.netcore
宝桥南山2 个月前
Microsoft Agent Framework(MAF) - 如何将workflow或者A2A client转换成一个AI Agent
microsoft·ai·微软·aigc·.net·.netcore
滴滴答答哒3 个月前
.NET Core 基于 AOP + Polly 实现数据库死锁自动重试
数据库·.netcore·sqlsugar
.NET修仙日记3 个月前
.NET EFCore批量插入性能优化实战:30秒 → 0.5秒
性能优化·c#·.net·.netcore·微软技术·efcore·踩坑实录