JS通过Url传递中文参数,c#获取参数

最近遇到一个JS通过Url传递中文参数,c#获取中文参数乱码的问题。解决方法如下:

正确的方法是:

JS

var reqUrl = document.location + "?key=" + encodeURI(keyword);

C#

 string keyword = Server.UrlDecode(Page.Request.QueryString["key"]);

错误的方法:

JS

<span style="color:#ff0000;">var reqUrl = document.location + "?key=" + keyword;
</span>

C#

<span style="color:#ff0000;">string keyword = Page.Request.QueryString["key"];</span>

也就是说传参时要编码encodeURI,获取参数时要解码Server.UrlDecode。


你可能感兴趣的:(JS通过Url传递中文参数,c#获取参数)