编辑:为了将来参考,我使用非xhtml内容类型定义 <!html>
我正在使用Django创建一个网站,我正在尝试在我的页面中嵌入任意json数据以供客户端javascript代码使用.
让我们说我的json对象是{"foo": "</script>"}.如果我直接嵌入,
<script type='text/javascript'>JSON={"foo": "</script>"};</script>
Run Code Online (Sandbox Code Playgroud)
第一个关闭json对象.(另外,它会使站点容易受到XSS的攻击,因为这个json对象将被动态生成).
如果我使用django的HTML转义函数,结果输出是:
<script type='text/javascript'>JSON={"foo": "</script>"};</script>
Run Code Online (Sandbox Code Playgroud)
并且浏览器无法解释<script>标记.
我在这里的问题是,