c#中的最佳URL编码技术

时间:2015-05-07 20:56:08

标签: c# url-encoding

我有一个href,可以通过从这样的数据库中读取属性来填充

  lblName.HRef = user.PublicSiteUrl; 

我想安全地对此URL进行编码,以防止任何持久的XSS攻击。

哪种编码对此有用而不会导致URL结构出现任何问题?

例如,如果我有来自数据库https://google.com?q=<SCRIPT>alert(“Cookie”+document.cookie)</SCRIPT>的此URL。如何使此URL安全,以便脚本不会作为URL的一部分执行

2 个答案:

答案 0 :(得分:0)

为什么不HttpUtility.UrlEncode

答案 1 :(得分:0)

我认为你要找的是Uri.EscapeUriString()

https://server/test.aspx?<SCRIPT>alert(“Cookie”+document.cookie)</SCRIPT>

将成为:

https://server/test.aspx?%3CSCRIPT%3Ealert(%E2%80%9CCookie%E2%80%9D+document.cookie)%3C/SCRIPT%3E