我使用的是微软AntiXss 3.1库。我们有一些使用非拉丁文字的国际网站。我们使用SEO友好的URL,所以我们有非ASCII字符在URL中结束。
AntiXss.UrlEncode (至少在3.1中)将“国际字符”视为安全字符,因此我们最终使用的是IRI而不是URI:
http://somesite.com/ja-JP/applications/search/セキュリティ-b200009HttpUtility.UrlEncode为URI (RFC3986)生成正确的编码:
http://somesite.com/ja-JP/applications/search/%e3%82%bb%e3%82%ad%e3%83%a5%e3%83%aa%e3%83%86%e3%82%a3-b200009但我更愿意遵循我们使用AntiXss库的标准。
我知道AntiXss/WPL 4.0已经发布(在默认情况下似乎不再将国际字符视为安全),但它已经更改了API名称,因此我必须对我们的应用程序进行重大更改才能进行升级。
因此,我很乐意回答以下任何一个问题:
谢谢
发布于 2010-10-25 15:51:11
它并没有改变API名称那么多(除了LdapEncode),非常老的名称仍然存在。实际上,方法名称与3.5中的名称相同,而且我还没有删除旧的弃用名称,因此您应该可以顺其自然地收到与3.5相同的警告。
如果你发现你在4.0上有问题,那就去烦我吧。bdorrans@那个糟糕的borg域名:)
https://stackoverflow.com/questions/4007153
复制相似问题