FreeMarker 自动转义和格式化HTML和XML输出,预防xss
为什么80%的码农都做不了架构师?>>>
这种自动转义需要FreeMarker 版本大于等于2.3.24。如果你不得不使用一个更早的版本,请使用过时的escape指令替代。
不过考虑到官网上最近的标注2.3.25已经是稳定版,建议升级
Latest stable release: 2.3.25-incubating
Released on 2016-06-26. Requires J2SE 1.5 or higher.
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.25-incubating</version>
</dependency>
所有的以ftlh和ftlx为扩展名的freemarker模板都会自动关联到HTML和XML输出格式,预定义的输出格式如下:
Name | Description | MIME Type |
Default implementation (freemarker.core.* )
|
---|---|---|---|
HTML
|
Escapes < , > , & , " , ' as < , > , & , " , '
|
text/html
|
HTMLOutputFormat.INSTANCE
|
XHTML
|
Escapes < , > , & , " , ' as < , > , & , " , '
|
application/xhtml+xml
|
XHTMLOutputFormat.INSTANCE
|
XML
|
Escapes < , > , & , " , ' as < , > , & , " , '
|
application/xml
|
XMLOutputFormat.INSTANCE
|
RTF
|
Escapes { , } , \ as \{ , \} , \\
|
application/rtf
|
RTFOutputFormat.INSTANCE
|
undefined
|
Doesn't escape. Prints markup output values (concept explainedlater) from other output formats as is. The default output format used when no output format was explicitly set in the configuration. |
None (null )
|
UndefinedOutputFormat.INSTANCE
|
plainText
|
Doesn't escape. |
text/plain
|
PlainTextOutputFormat.INSTANCE
|
JavaScript
|
Doesn't escape. |
application/javascript
|
JavaScriptOutputFormat.INSTANCE
|
JSON
|
Doesn't escape. |
application/json
|
JSONOutputFormat.INSTANCE
|
CSS
|
Doesn't escape. |
text/css
|
CSSOutputFormat.INSTANCE
|
转载于:https://my.oschina.net/buwei/blog/729857
FreeMarker 自动转义和格式化HTML和XML输出,预防xss相关推荐
- Vue请求URL格式化,拒绝分号自动转义
最近在用Vue开发百度鹰眼,发送get请求时遇到了转义的问题.具体情况如下: let url = "/baiDuYingYanEntitySearch?"+'filter=enti ...
- Java使用FreeMarker自动生成Word文档(带图片和表单)
Java使用FreeMarker自动生成Word文档(带图片和表单) 1 背景 2 目标效果 3 创建Word模板 3.1 创建模板文档 3.2 转换模板文档 3.3 处理模板文档中的占位符 3.4 ...
- php mysql插入的数据有引号,PHP引号转义中解决POST,GET,Mysql数据自动转义问题
在处理mysql和GET.POST的数据时,常常要对数据的引号进行转义操作. PHP中有三个设置可以实现自动对'(单引号),"(双引号),\(反斜线)和 NULL 字符转转. PHP称之为魔 ...
- 使用FreeMarker自动生成Word文档
使用FreeMarker自动生成Word文档 获取文件路径 创建一个word文档,然后再文档中在文档中写标识,对应代码中的map数据 2.将word转为xml后缀文件,再转为.ftl文件 3.保存路径 ...
- 如何格式化字符串的xml?
如何格式化字符串的xml? [问]xml的标准形式是: <Root> <Name>John</Name> <Age>16</Age> < ...
- angularjs2 html转义,详解Angular.js数据绑定时自动转义html标签及内容
angularJS在进行数据绑定时默认是以字符串的形式数据,也就是对你数据中的html标签不进行转义照单全收,这样提高了安全性,防止html标签的注入攻击,但有时候需要,特别是从数据库读取带格式的文本 ...
- django中,kindeditor存到数据库的html,前台html标签被自动转义的解决办法
2019独角兽企业重金招聘Python工程师标准>>> 1,使用kindeditor进行了上传图片功能,存储到后台的html代码为: <img src="/stati ...
- html5只能django来写if吗,(4)Django学习——模板标签定义及语法:for循环,if判断,页面跳转,开启关闭自动转义,ur...
1.常用标签 (1)模板标签重要概念: 1.定义:标签在渲染的过程中提供任意的逻辑 注意:(这个定义是刻意模糊的. 例如,一个标签可以输出内容,作为控制结构,例如"if"语句或&q ...
- python去掉json中的转义符_企业微信表情符自动转义怎么用?企业微信电脑版这样做...
企业微信有一个独特的功能叫做"表情符自动转义",其实通俗点说就是表情的快捷键,设定了这个之后,可以在键盘上点击这个符号,而在企业微信电脑版上显示的就是对应的表情,对于快速恢复很 ...
最新文章
- 微信小程序提示 出现脚本错误或者未正确调用 Page()
- 原始套接字学习笔记(1)
- 算法学习之路|数位dp简要分析
- Java魂斗罗1234合集_《魂斗罗》正统续作1234部介绍,别再搞错喽!
- Linux操作系统下双网卡路由表配置
- 11寸笔记本电脑推荐_3000-20000元高性价比笔记本电脑推荐 含CPU天梯图、显卡天梯图 2020年11月更新...
- checking for mysql_commit in -lmy_mysql2安装异常
- 字典树实现_学习NLP的第3天——字典树
- java基础-public/private/protected的具体区别
- [UE4] Sequence 的某一条分支执行 delay 之后会继续执行下一条分支而不是停留在该分支
- 批量取出PHP BOM头
- 线性表:5.约瑟夫环,循环链表及其C语言实现
- Project——编制进度计划、保存基准
- pq 中m函数判断嵌套_PowerQuery 进阶之 M 函数学习
- SQL WITH TIES解释与用法
- Windows 10 解决无法完整下载安装语言包(日语输入法无法下载使用)
- C语言:编写一个函数,输入一个正整数,输出它的各个位数的平方和。
- 微信小程序的项目缓存路径
- 8051单片机Proteus仿真与开发实例-ULN2003A驱动步进电机仿真
- vue-seamless-scroll 列表自动滚动