seanly

 

使用Server对象的URL编码和解码

使用Server对象的URL编码和解码

Server对象提供对地址(URL)进行URL编码和解码功能。其中,URL编码功能由UrlEncode()方法实现,URL解码功能由UrlDecode()方法实现。

当URL包含Unicode字符(如中文字符等)时,网页可能会存在潜在的危险。如果使用URL编码功能可以消除因URL中存在的潜在危险。

【示例9-25】 创建了中文字符串chineseString,它的值为"这是一个中文字符串。",并调用UrlEncode()方法对chineseString字符串进行URL编码,然后构建为一个跳转到Dir.aspx页面的新地址(URL),保存为url变量。

  1. string chineseString = "这是一个中文字符串。";  
  2. string url = "~/Dir.aspx?Value=" + Server.UrlEncode(chineseString); 

注意:url字符串(已经经过URL编码,不再包含中文字符串)的值为"~/Dir.aspx?Value= %e8%bf%99%e6%98%af%e4%b8%80%e4%b8%aa%e4%b8%ad%e6%96%87%e5%ad%97%e7%ac%a6%e4%b8%b2%e3%80%82"。

如果要获取经过URL编码之后的URL中的编码前的字符串,则需要使用URL解码功能。该功能由UrlDecode()方法实现。

【示例9-26】 调用UrlDecode()方法对url字符串进行URL解码,并保存为urlwithchinese变量。此时,该变量的值为"~/Dir.aspx?Value=这是一个中文字符串。",并包含中文字符串。

  1. string urlwithchinese = Server.UrlDecode(url); 

posted on 2010-08-05 17:35  seanly  阅读(763)  评论(0)    收藏  举报

导航