你如何使用html敏捷包htmlencode?

html-agility-pack html-encode xss

有沒有人這樣做過?基本上,我想通過保留基本標籤如h1,h2,em等來使用html;清除img和標籤中的所有非http地址;和HTMLEncode每隔一個標籤。

我堅持使用HTML編碼部分。我知道要刪除一個節點你做“node.ParentNode.RemoveChild(node);”其中node是HtmlNode類的對象。而不是刪除節點,我想HTMLEncode它。

熱門答案

您需要刪除表示您不想要的元素的節點。然後需要將編碼的HTML重新添加為文本節點。

如果您不想處理要丟棄的元素的子元素,那麼您應該只能使用OuterHtml ......這樣的事情可能會起作用:

node.AppendChild(new HtmlTextNode { Text = HttpUtility.HtmlEncode(nodeToDelete.OuterHtml) });



許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因
許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因