我通过ajax请求从服务器获取xml字符串。但它没有通过jquery-
解析var xml = $.parseXML("<dummy>"+xmlStr+"</dummy>");
我收到了错误 -
Uncaught Error: Invalid XML: <dummy><SMSInfo><smsTo>7005056</smsTo...
我进一步调试了xml无效的原因,从调试到jquery parseXML函数得到以下错误 -
This page contains the following errors:error on line 1 at column 7624: Char 0x0 out of allowed range↵Below is a rendering of the page up to the first error.
此外,我仍然将xml数据从控制台复制到新文件并在另一个编辑器中打开,在那里我可以看到这些字符 -
^@Z ^@6 ^@1 ...
我的常用编辑(Webstorm)甚至没有显示这些字符...
我无法弄清楚如何删除这些字符......这些不是通常的“&lt;,&gt;,&amp;”字符(我已经清理过了)
请有人帮忙!
答案 0 :(得分:1)
在unicode 0x0
中代表null
并解析此null会导致异常。
尝试找出null的原因是什么,从根本上解决问题。
在这个SO问题中讨论了一个非常类似的问题:Error about invalid XML characters on Java