使用Google Caja防止删除<style> </style>

时间:2015-09-01 18:15:10

标签: javascript html css google-caja

我出于安全目的在客户端使用Google Caja来清理HTML。但是,不同元素的风格与我在消毒之前收到的风格不同。我需要保留标签中的内容,并且我试图弄清楚如何。

例如,我收到以下HTML:

<div>
<style>
.btn-active {
    background-color: green;
}
</style>
<script> alert('Blah');</script>
<a class="btn-active"></a>
</div>

html_sanitize(bodyHtml, urlX, idX);返回:

<div>
<a class="btn-active"></a>
</div>

理想情况下,我希望将样式标记与其他所有内容保持一致。 像这样。

<div>
<style>
.btn-active {
    background-color: green;
}
</style>
<a class="btn-active"></a>
</div>

我一直试图在任何地方找到解决方案,但我无法做到。我还查看了文档,实现了自定义策略,但即便如此,我也无法控制脚本标记被删除。

有没有办法用Google Caja执行此操作?

0 个答案:

没有答案