我不知道,为什么我们使用Server.UrlEncode()& Server.UrlDecode()? 在QueryString中,我们在URL中看到任何内容,那么为什么我们要编码或解码呢?
答案 0 :(得分:4)
URLEncode方法应用URL编码规则,包括转义 字符,到指定的字符串。
URLEncode按如下方式转换字符:
Spaces()被转换为加号(+)。
非字母数字字符转义为十六进制 表示。
此外,我认为您正在讨论HttpServerUtility.UrlDecode
方法,该方法对已编码的字符串进行解码并返回原始字符串。
URL解码字符串并返回解码后的字符串
URL编码可确保所有浏览器都能正确传输文本 网址字符串。问号(?),&符号(&)等字符, 斜杠标记(/),某些空格可能会被截断或损坏 浏览器。因此,这些字符必须以标签或文件编码 在查询字符串中,字符串可以由浏览器重新发送 请求字符串。
UrlDecode是访问HttpUtility.UrlDecode的便捷方式 从ASP.NET应用程序运行时的方法。在内部,UrlDecode 使用HttpUtility.UrlDecode来解码字符串。
更多信息......
答案 1 :(得分: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
答案 2 :(得分:1)
某些字符在网址中不合法,因此必须对其进行编码。 This是我发现的第一个非法字符列表。