【.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);
相关推荐
切糕师学AI1 天前
.NET Core 如何使用 Quartz?
.netcore·quartz·作业调度
聪明努力的积极向上2 天前
【C#】System.Text.Encoding.Default 属性在framework和.netcore中的区别
开发语言·c#·.netcore
切糕师学AI3 天前
.NET Core Web + Vue 项目集成消息推送工具SignalR
vue.js·.netcore·signalr
万19993 天前
asp.net core webapi------3.AutoMapper的使用
c#·.netcore
dephixf5 天前
工业级部署指南:在西门子IOT2050(Debian 12)上搭建.NET 9.0环境与应用部署
物联网·.netcore·智能制造·边缘网关·西门子·iot 2050
睡前要喝豆奶粉5 天前
在.NET Core Web Api中使用JWT并配置UserContext获取用户信息
前端·.netcore
睡前要喝豆奶粉5 天前
在.NET Core Web Api中使用阿里云OSS
阿里云·c#·.netcore
周杰伦fans6 天前
.NET Core WebAPI 中 HTTP 请求方法详解:从新手到精通
网络协议·http·.netcore
睡前要喝豆奶粉8 天前
.NET Core Web API开发需引入的三个基本依赖配置说明
oracle·c#·.netcore
睡前要喝豆奶粉8 天前
.NET Core Web API中数据库相关配置
数据库·c#·.netcore