我正在使用 microsoft anti xss library 来形成安全性。我正在使用 HtmlFormUrlEncode 方法。
如何解码我记录的数据?
样本数据 :
mail%40sample.com
%c3%96nder
我正在使用 microsoft anti xss library 来形成安全性。我正在使用 HtmlFormUrlEncode 方法。
如何解码我记录的数据?
样本数据 :
mail%40sample.com
%c3%96nder
AntiXSS 不提供解码 - .NET 框架往往会为您完成。实际上,UrlDecode实际上应该正确。
但是,如果您想手动执行此操作,应该能够创建一个与原始字符串长度相同的 char[] 数组,然后循环遍历字符串,查找 % 然后抓取两个字符,确保它们是有效的十六进制,然后执行以下操作以获取十六进制值
if ((h >= '0') && (h <= '9'))
{
return (h - '0');
}
if (((h >= 'a') && (h <= 'f')) ||
((h >= 'A') && (h <= 'F')))
{
return ((h - 'a') + 10);
}
一旦你有了这两个值,你就可以结合
byte b = (byte) ((firstByte << 4) | secondByte);
并通过调用UTF8Encoding.GetChars()将其附加到数组中
(注意:代码不在我的脑海中并且没有正确测试)