duanoucuo7045 2014-11-27 23:03
浏览 40
已采纳

如何从PHP API获取和处理响应

Ok I will try and keep this short. I'm making a request to a simple PHP API which can be done by AJAX through Javascript or JQuery, however I want to make the request using PHP. What is the best way to do this? Using the file_get_contents() function or CURL? If so how do I do it through CURL as the API requires I use GET not POST. Also the response I know is in XML, how do I then process the response once it comes back?

This question may have been asked many times, however when reviewing a lot of the questions and answers they are not specific to my needs on this one so please no answers with "Please see this link" as I can guarantee it won't answer the question in full as a lot of them are making requests from either Facebook API or another API that does not do what the API I am using does.

  • 写回答

1条回答 默认 最新

  • doubo1883 2014-11-27 23:10
    关注
    function  getXML()
    {
    
     $ch = curl_init();
     curl_setopt($ch, CURLOPT_URL, "http://127.0.0.1/index.html");
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
     curl_setopt($ch, CURLOPT_USERPWD, "user:password");
     curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
     $res = curl_exec($ch);
    
     return  $res;
    
    }
    
        $xml_data = getXML();
    
        $doc = new DOMDocument();
        $doc->loadXML($xml_data);
    
        $wms = $doc->getElementsByTagName('WowzaMediaServer');
    
    
        $wmstotalactive = $wms->item(0)->getElementsByTagName("ConnectionsCurrent")->item(0)->nodeValue;
        $wmstotaloutbytes = $wms->item(0)->getElementsByTagName("MessagesOutBytesRate")->item(0)->nodeValue;
    

    so you extracted from xml the value from ConnectionsCurrent key and MessagesOutBytesRate .

    If your link does not need to auth remove :

    curl_setopt($ch, CURLOPT_USERPWD, "user:password");

    curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题