我需要在服务器端验证用户输入,并且href
需要确保只允许作为协议(如果指定的话)。目标是消除可能的恶意代码或任何类似的东西。http://
https://
javascript:...
造成困难的是冒号可以在这样的字符串中编码的方式数量,例如:
, :
, :
, :
, :
。我想转换值并在浏览器呈现页面之前将其视为浏览器。
一种选择是使用 AngleSharp 构建 DOM 文档,因为它在解析属性时做得非常好。然后我可以检索该值并对其进行验证,但是为了解析一个值而构建整个 DOM 树似乎有点过头了。有没有办法使用 AngleSharp 来解析一个属性值?或者是否有一个我可以仅用于此任务的库?
我也发现了这个问题,但是其中使用的方法并没有像浏览器那样真正解析 URI。