URL解码时,为什么将加号解码为空?
以下代码在.NET Framework 2.0中测试。 先看一个例子:
test.aspx页面:
当参数 parameters 输出到页面后,值已经不为“A+B”了,而变成“A B”,将“+”变成了空格。 原因: 在test.aspx页面,“Request.QueryString”中的值仍然是“A%2bB”,但通过Request.QueryString ["p"]取值时,得到的结果已经被自动解码了(注意)。 那么在“string parameters = Request.QueryString["p"].ToString();”条语句执行完后, parameters 的值已经为“A+B”了。 然后再执行“parameters = Server.UrlDecode(parameters);”条语句时,等于对“A+B”进行了解码 。 解码后的值变成了“A B”(A空格B)。 疑问: “A+B”解码后为什么变成"A B"(将“+”解码为空格)?请高手赐教。 參和旗鷹栖坿噐.NET Framework 2.0?碕弼?幣何蛍葎夛撹乎諒籾議圻咀。
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |