繁体   English   中英

URL解码器c#asp.net

[英]URL Decoder c# asp.net

QueryString中,我的一部分看起来像这样

...u4w51EEcg8%2bj04e7C....

当我使用HttpUtility.UrlDecode时 ,代表“ +”的部分“%2b”变成空白。 我首先使用HttpUtility.UrlEncode对字符串进行编码。

有人对发生的事情有任何线索吗?

您要解码两次吗? 为了方便起见,URL中的+号会解码为 (空格,0x20)。 虽然%2b应该解码为+ ,但解码将为您提供

编辑:刚看到您的自我回答,是的,请始终检查您的getter函数/属性是否自动为您解码。 双重解码通常不会产生预期的结果,甚至可能导致安全隐患。

看起来无论“ Request.QueryString []”如何解码,所以发生的事情是我对QueryString进行了2次解码,这使“ +”成为空白。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM