core返回乱码解决方法

项目场景:

.net core 3.1、.net core 3.0

json里中文字符被转换成 “\u20EE\u5BB1\u62WC\u6F0F\u1E8D\u6B6B\u72EE” 这种编码。


解决方案:

在Startup类中ConfigureServices方法添加以下代码:

public void ConfigureServices(IServiceCollection services)
{
	services.AddControllersWithViews().AddJsonOptions(options =>
	{
		options.JsonSerializerOptions.Encoder = JavaScriptEncoder.Create(UnicodeRanges.All);
	});
}

 


原因分析:

这是因为.net core不设置编码器默认将中文字符串转义,详细请查看官方解释
https://docs.microsoft.com/zh-cn/dotnet/standard/serialization/system-text-json-how-to#customize-character-encoding

posted @ 2021-02-09 15:02  suqq小白  阅读(483)  评论(0编辑  收藏  举报