doutao1282 2015-03-16 23:31
浏览 74
已采纳

使用html注释解析xml时出现Guzzle错误[关闭]

I'm getting this error from guzzle. the xml has a html comment in it which I think is breaking it. Any experience with this specifically in relation to guzzle because it is at the point that i try to get the response at xml where this error is through e.g. $res->xml(). $res alone or $res->getBody() don't seem to help me.

"Uncaught exception 'Exception' with message 'String could not be parsed as XML' in /home/mso/public_html/connector/vendor/guzzlehttp/guzzle/src/Message/Response.php:168 Stack trace: #0 /home/mso/public_html/connector/vendor/guzzlehttp/guzzle/src/Message/Response.php(168): SimpleXMLElement->__construct('Please use a mi...', 2048, false, '', false) #1 /home/mso/public_html/connector/get_dat.php(23): GuzzleHttp\Message\Response->xml() #2 {main} Next exception 'GuzzleHttp\Exception\XmlParseException' with message 'Unable to parse response body into XML: String could not be parsed as XML' in /home/mso/public_html/connector/vendor/guzzlehttp/guzzle/src/Message/Response.php:174 Stack trace: #0 /home/mso/public_html/connector/get_data.php(23): GuzzleHttp\Message\Response->xml() #1 {main} thrown in /home/mso/public_html/connector/vendor/guzzlehttp/guzzle/src/Message/Response.php on line 17

  • 写回答

1条回答 默认 最新

  • duanbangzhou7809 2015-03-17 00:56
    关注

    You can try to check your xml prior to load using:

    $oXmlUtilities = new cXmlUtilities();
    // Validate xml file by setting internal errors.
    libxml_use_internal_errors( true );
    try
    {
        $sTmpString = simplexml_load_string( $sContents );
    }
    catch( Exception $oException )
    {
        $sError = $oException->GetMessage();
    }
    
    // If xml validates and isn't empty call guzzle:
    if( empty( $sError ) && ( $sTmpString ) )
    {
        // XML is valid.
    

    Otherwise you may need to parse the string through a regex for html comments:

    <!--(.*?)-->
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 R语言Rstudio突然无法启动
  • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
  • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值