我有一个脚本,作为跟踪解决方案(etracker)的一部分呈现到html页面。
是这样的:
<script>
var et_cart= 'nice shoes,10.0,100045;nice jacket,20.00,29887';
</script>
这将通过一些我无法控制的javascript传输到跟踪解决方案的服务器。它最终将成为两个项目。这些项目在源代码中用分号分隔(在“100045”之后)。
我显然需要对要呈现的值进行Html编码和Javascript编码。
我首先对Html进行编码,然后删除单引号。
这是可行的,但我对法语和德语中的特殊字符有一个问题,例如umlaut(ü,÷…)。
它们呈现类似{的内容。使用lars mlaut作为文章时,脚本的输出是:
<script>
var et_cart= 'lars {mlaut,10.0,100045;nice jacket,20.00,29887';
</script>
分号由跟踪解决方案作为项目分隔符计算。
跟踪解决方案的支持让我对这些值进行url编码。这能行吗?
我猜URL编码并不能阻止任何xss数据包。可以先进行url编码和html编码,然后再进行javascript编码吗?