当字段名称中有引号时,Kissmetrics 导出显然会产生无效的 json,例如,以下是产生的事件之一:
{
"ab test group native dialogs on mobile":"Control",
"ab test group "interested" button copy":"Interested",
"_t":1412633724,
"_p":"hk5yxuxcqe/935mkbj+pz8xi0a8="
}
(添加了换行符来澄清问题,我们不能使用它们来修复 JSON)。
我正在寻找一种机制来修复这种损坏的 JSON。
我相信我们可以利用一些假设:
- 我们可以假设生成的 JSON 是扁平的(没有嵌套对象或数组),所以我认为我们可以利用这一点。
- 我相信所有字段都是字符串,除了 _t,但不是 100% 肯定。
- 我不认为我们可以假设坏的未转义引号将是平衡的。
- 我相信 KM 会从字段名称中删除逗号和冒号,但不是 100% 肯定——它们不会从值中删除(尽管我相信值被正确编码)。