我有一个遗留应用程序调用ASP.NET Core API将地址作为查询字符串参数传递。有时这些地址包含法语(fr-CA)字符。应用程序URL对地址进行编码,最终得到的结果如下:
“123 DE L'%C9CUME”(而不是“123 DE L'ÉCUME”)
问题出在控制器功能内部我仍然认为它是“123 DE L'%C9CUME”,因为它没有被解码。
如果我将字符串传递给System.Net.WebUtility.UrlDecode
,我最终会得到“123 DE L' CUME”。
我对.NET Core很陌生,所以想知道我是否错过了向API添加支持语言的步骤?
答案 0 :(得分:0)
原来,字符串在遗留应用程序端没有正确编码。不受API的控制。
一旦遗留应用程序被调整为正确编码,事情就会按预期工作。