知识网2021年10月28日 17:31原创
DTL(Django Template Language)模板中默认已经开启了自动转义,会将那些特殊字符串进行转义,比如会将“<”转义成<会将“>”转移成“>”,使用DTL的自动转义,可以使网站不容易出现XSS漏洞。
如果变量是可信任的,那么可以使用“autoescape”标签来关掉 自动转义,示例代码如下:
views.py中代码如下:
from django.shortcuts import render
def index(request):
# 定义一个上下文
context = {
&info&:&<a href='https://wwww.baidu.com'>百度</a>&
}
return render(request,'index01.html',context=context)
index01.html中代码如下:
<body>
<!--此时关掉了DTL模板中的自动转义功能-->
{% autoescape off %}
{{ info }}
{% endautoescape %}
</body>
运行结果如下:
查看不关掉DTL自动转义功能时,运行结果如下:
移除html标签中的空白字符。包括空格、tab键、换行符,示例代码如下:
{% spaceless %}具体内容{% endspaceless %}
很赞哦!(5)
©芃睿知识网 版权所有 2012-2022 www.shsongjiang.com
版权申明:本站部分文章来自互联网,如有侵权,请联系邮箱xiajingzpy@163.com,我们会及时处理和回复!