Python中autoescape标签使用详解,,1.spaceles
Python中autoescape标签使用详解,,1.spaceles
1.spaceless标签:移除html标签中的空白字符。包括空格、tab键、换行符,示例代码如下:
{% spaceless %}具体内容{% endspaceless %}
2.autoescape标签:DTL模板中默认已经开启了自动转义,会将那些特殊字符串进行转义,比如会将“<”转义成<会将“>”转移成“>”,使用DTL的自动转义,可以使网站不容易出现XSS漏洞。
如果变量是可信任的,那么可以使用“autoescape”标签来关掉 自动转义,示例代码如下:
views.py中代码如下:
from django.shortcuts import renderdef 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自动转义功能时,运行结果如下:
如果想要查看特殊字符被转义为什么了,就可以通过查看网页源码进行查看。
Python中autoescape标签使用详解
评论关闭