标签: asp.net .net-3.5 urlencode
为什么?
Server.UrlEncode("2*")
返回2*
2*
虽然它应该返回2%2A
2%2A
在this demo site
答案 0 :(得分:2)
RFC 1738明确允许网址中的*:
*
因此,只有字母数字,特殊字符“$ -_。+!*'(),”和 可以使用用于其保留目的的保留字符 在URL中未编码。
所以,没有必要对它进行编码。
您链接到的页面是一个经典的asp页面,所以使用UrlEncode,这是一个很旧的实现而不是.NET实现。
UrlEncode
答案 1 :(得分:0)
根据.NET,*是一个'安全'字符,不需要编码。
这是否真的正确,我不知道。