【发布时间】:2010-11-03 07:38:00
【问题描述】:
CPAN 中是否有一个好的库可以过滤掉所有坏东西的文本字段,比如 xss?
【问题讨论】:
-
可能与 Filtering JavaScript out of HTML 重复。
CPAN 中是否有一个好的库可以过滤掉所有坏东西的文本字段,比如 xss?
【问题讨论】:
在基本级别,您需要HTML::Entities,但您选择的转义取决于您在 DOM 中使用这些值的位置。例如,如果将用户输入粘贴在<script> 标记中,则对用户输入进行 html 实体编码完全没有帮助。
很可能你正在使用某种模板来生成 html,所以它应该有一个方法来转义内容,HTML::Mason 有 <% $thing |h %>,Template::Toolkit 有 [% thing | html %]... 但是如果您只是在自己的代码中执行此操作,则需要自己致电 encode_entities。
【讨论】:
您的第一步应该始终是搜索和浏览结果。好像有lots of potential hits。当我在寻找新的东西时,我会浏览搜索结果并检查模块的文档以了解它们的清晰程度以及 API 的构建程度。我还寻找评论(有些有,有些没有——通常是随机的)并检查错误。它让我知道我正在处理什么。
如果您的问题是“这些选项中哪一个最好?”,那么在这种情况下,恐怕我不知道。 (我最初的回答可能过于笼统。)
开始搜索 CPAN 的两个好地方:
【讨论】: