如果我使用XML :: LibXML解析器重复调用如下所示的行...
$tree = $parser->parse_file($WBCall);
...其中$ WBCall表示返回XML格式数据的服务的HTTP字符串,然后偶尔会收到如下错误:“:1:解析器错误:期望开始标记,'<'没找到“
当代码引入数百个XML数据文件时,很少发生这种情况。这是否意味着我需要添加一些XML验证?如果是这样,Perl最好的模块是什么?
答案 0 :(得分:1)
听起来你偶尔会得到空洞的回应,或者可能是某种“服务器忙”的回应。
当您说“ $ WBCall表示以XML格式返回数据的服务的HTTP字符串”时,您是否意味着它包含URI?如果是这样,也许您可以使用LWP自己发出HTTP请求,然后调用$parser->parse_string($response->content)
。如果发生错误(用eval捕获),您可以记录$response->as_string
。