我如何在jinja2中跳過危險的unsanitized輸入?jinja2:html轉義變量
我可以在模板內部執行它,還是必須在Python代碼中完成?
我有一個變量,可能包含da <ngero> u & s chars。我如何在jinja2中逃脫它
我如何在jinja2中跳過危險的unsanitized輸入?jinja2:html轉義變量
我可以在模板內部執行它,還是必須在Python代碼中完成?
我有一個變量,可能包含da <ngero> u & s chars。我如何在jinja2中逃脫它
例如,
{{ user.username|e }}
管它通過|e
過濾
Jinija: Template Designer Documentation -> Builtin Filters: Escape
你也可以告訴環境autoescape一切:
e = Environment(loader=fileloader, autoescape=True)
注:在jinja1這是auto_escape
如果你想在喲中轉義html烏爾程序,你可以像下面這樣做(例如):
>>> import jinja2
>>> jinja2.__version__
'2.6'
>>> a
'<script>alert("yy")</script>'
>>> jinja2.escape(a)
Markup(u'<script>alert("yy")</script>')
>>> str(jinja2.escape(a))
'<script>alert("yy")</script>'
瓶有一個內置的tojson
過濾器:
上面的鏈接斷裂,使用http://jinja.pocoo.org/docs/templates /?highlight = pipe%20safe#html-escaping – 2014-08-11 05:04:59
再次破壞http://jinja.pocoo.org/docs/dev/templates/#builtin-filters – silpol 2016-09-08 04:53:24