1

是否可以以除 RawHTML 之外的任何其他方式插入 html?RawHTML 是一种威胁,我想知道我是否可以用另一种方式来做。

提前致谢!

4

1 回答 1

2

正如@gasman 在他对该问题的评论中所说,无论您为编辑提供什么表单字段,插入 HTML 都会带来相同的风险。

但是,您可以.clean()在块类型上实现一个方法,该方法使用Bleach清理 HTML 。

例如只允许<p>标签:

>>> raw_html = """<p id='foo' class='dangerous'>
<script>console.log('bar');</script>
<b>Hello</b>
</p>"""
>>> html = bleach.clean(raw_html,
                        tags=['p'],
                        attributes={'p': ['id']},
                        strip=True)
>>> print(html)
<p id='foo'>Hello</p>
于 2019-03-12T11:08:37.360 回答