您的位置:首页 > Web前端 > JavaScript

URL中文乱码的问题,特殊字符的解决办法

2016-11-29 16:02 671 查看

代码:

javascript:

var rul = "/controller/action?param=encodeURIComponent('测试参数')";
var encodedUrl = encodeURI(url);


服务器端代码:

string code = HttpUtility.UrlDecode(param, Encoding.UTF8);


注:

encodeURIComponent() 

函数将转义用于分隔 URI 各个部分的标点符号

 该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( ) 。

其他字符(比如 :;/?:@&=+$,# 这些用于分隔 URI 组件的标点符号),都是由一个或多个十六进制的转义序列替换的。

 encodeURI() 

该方法的目的是对 URI 进行完整的编码,因此对以下在 URI 中具有特殊含义的 ASCII 标点符号,encodeURI() 函数是不会进行转义的:;/?:@&=+$,#

简单点说,encodeURIComponent()就是对uri中的参数单独编码的,因为它会把uri中的分隔符也进行转换,而 encodeURI()则是对整个uri进行编码的,它不会转义uri的分隔符。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javascript c# web 乱码 编码
相关文章推荐