xml2js添加了转义字符,这会使它自己的json无效,我的xml已经包含转义字符。无论如何,有没有告诉xml2js不要插入转义字符?
之所以知道这一点,是因为我查看了响应,并在我的xml文件中找到了...
if ($_1b4wbxfvjjgwechi.shouldShowLinkTitle(editor.settings)) {
linkTitleCtrl = {
name: 'title',
type: 'textbox',
label: 'Title',
value: data.title,
onkeyup : searchTitle
};
}
var searchTitle = function(e) {
var linkList = $_1b4wbxfvjjgwechi.getLinkList(editor.settings);
linkList = linkList+"&q="+e.target.value;
editor.settings.link_list = linkList;
};
...
tinymce.init({
...
link_list : 'ajax/ajax-html.php?request=tinymceurls'
...
});
var searchTitle = function(e) {
var linkList = $_1b4wbxfvjjgwechi.getLinkList(editor.settings);
linkList = linkList+"&q="+e.target.value;
editor.settings.link_list = linkList;
};
...
这个'5.4\\"'
。
答案 0 :(得分:1)
通常,XML到JSON库将假定XML文件中的数据是使用常规XML约定表示的,也就是说,它将不包含JSON样式的转义序列。因此,将假设XML中的Array (
[0] => 00001
[1] => 00002
[2] => 00003
)
代表反斜杠,其后是引号,在JSON中以\"
表示。
如果您想考虑在XPath 3.1中使用\\\"
函数,则可以选择用xml-to-json()
标记输入XML,以指示XML中存在JSON转义序列。当然,还有许多其他的XML到JSON转换库可用,它们都有各自的怪癖,约定和限制。
答案 1 :(得分:0)
感谢您的帮助,我得出的解决方案是,在原始xml文件上进行搜索并替换为sed,然后再由bash的xml2js处理该文件,因为这是脚本的一部分,该脚本有效真的很好