我不知道,我们为什么要使用Server.UrlEncode()
& Server.UrlDecode()
?!在 QueryString 中,我们在 URL 中看到任何内容,那么我们为什么要对它们进行编码或解码呢?
问问题
20800 次
3 回答
5
URLEncode 方法将 URL 编码规则(包括转义字符)应用于指定的字符串。
URLEncode 转换字符如下:
空格 ( ) 转换为加号 (+)。
非字母数字字符转义为十六进制表示。
另外,我认为您正在谈论HttpServerUtility.UrlDecode
解码编码字符串并返回原始字符串的方法。
URL 解码字符串并返回解码后的字符串
URL 编码确保所有浏览器都能正确传输 URL 字符串中的文本。问号 (?)、与号 (&)、斜线 (/) 和空格等字符可能会被某些浏览器截断或损坏。因此,这些字符必须在标签或查询字符串中编码,其中字符串可以由浏览器在请求字符串中重新发送。
UrlDecode 是一种在运行时从 ASP.NET 应用程序访问 HttpUtility.UrlDecode 方法的便捷方式。在内部,UrlDecode 使用 HttpUtility.UrlDecode 来解码字符串。
更多信息 ...
于 2012-05-18T14:08:27.693 回答
2
URLEncode 转换字符如下:
Spaces ( ) are converted to plus signs (+). Non-alphanumeric characters are escaped to their hexadecimal representation.
<%Response.Write(Server.URLEncode("http://www.microsoft.com")) %>
produces the following output:
http%3A%2F%2Fwww%2Emicrosoft%2Ecom
于 2012-05-18T14:08:57.130 回答
1
某些字符在 URL 中是不合法的,因此必须对其进行编码。这是我发现的第一个非法字符列表。
于 2012-05-18T14:04:16.663 回答