Javascript 带有特殊字符的Internet Explorer url问题
我有一个带有asp.net web api2后端的Angle应用程序 网址: 上述url在Chrome、Firefox和Safari中运行良好,但在IE浏览器中存在问题 值:Cura%C3%A7ao在发送到web api后端时,对于Chrome和Firefox,Safari被解释为Curaçao,但是对于IE浏览器,它被解释为Curaçao�敖 在本例中,上述字符串包含特殊字符:ç,该字符被解释为�. 有人能帮我解决这个问题吗?你能试试这个吗:Javascript 带有特殊字符的Internet Explorer url问题,javascript,c#,asp.net-web-api2,Javascript,C#,Asp.net Web Api2,我有一个带有asp.net web api2后端的Angle应用程序 网址: 上述url在Chrome、Firefox和Safari中运行良好,但在IE浏览器中存在问题 值:Cura%C3%A7ao在发送到web api后端时,对于Chrome和Firefox,Safari被解释为Curaçao,但是对于IE浏览器,它被解释为Curaçao�敖 在本例中,上述字符串包含特殊字符:ç,该字符被解释为�. 有人能帮我解决这个问题吗?你能试试这个吗: String result = Uri.Escap
String result = Uri.EscapeUriString(Encoding.UTF8.GetString(Encoding.ASCII.GetBytes("Curaçao")));
请注意Uri。EscapeUriString()不会转义&nor=nor?,也不会转义任何RFC保留字符。这意味着,如果您的查询参数包含这些字符中的任何一个,您将中断URL。因此,似乎Uri.EscapeDataString()是要使用的方法
来源:你能试试这个吗:
String result = Uri.EscapeUriString(Encoding.UTF8.GetString(Encoding.ASCII.GetBytes("Curaçao")));
请注意Uri。EscapeUriString()不会转义&nor=nor?,也不会转义任何RFC保留字符。这意味着,如果您的查询参数包含这些字符中的任何一个,您将中断URL。因此,似乎Uri.EscapeDataString()是要使用的方法
来源:感谢您的回复。我尝试了上述方法,但对我无效。我不知道为什么IE browse的请求会发送Cura�ao是web api,但Chrome和Firefox、Safari浏览器将Curaçao发送到web api后端。我尝试在angular代码中使用decodeURIComponent api,并能够解码特殊字符� 但在API端,我将其视为�. 非常感谢您的帮助。谢谢您的回复。我尝试了上述方法,但对我无效。我不知道为什么IE browse的请求会发送Cura�ao是web api,但Chrome和Firefox、Safari浏览器将Curaçao发送到web api后端。我尝试在angular代码中使用decodeURIComponent api,并能够解码特殊字符� 但在API端,我将其视为�. 非常感谢您在这方面的任何帮助。