簡體   English   中英

卷曲響應未獲取結果數據

[英]Curl response not getting result data

我正在嘗試通過curl發送WSDL。 但我得到以下回應:

HTTP/1.0 200 Connection established

HTTP/1.1 100 Continue

HTTP/1.1 500 Internal Server Error
Date: Sat, 02 May 2015 05:58:05 GMT
Server: IBM_HTTP_Server
X-Powered-By: Servlet/3.0
$WSEP: 
Content-Length: 85
Content-Type: text/html;charset=ISO-8859-1
Connection: close
Content-Language: en-US

Error 500: java.lang.StringIndexOutOfBoundsException: String index out of range: -1

我的代碼如下:

    $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_PROXY, $proxy);
        curl_setopt($ch, CURLOPT_PROXYUSERPWD, $proxyauth);
        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
//        curl_setopt($ch, CURLOPT_POST, true);
        curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 50);
        curl_setopt($ch, CURLOPT_TIMEOUT, 900);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_HEADER, array("Content-type: text/xml;charset=\"utf-8\""));
//        curl_setopt($ch, CURLOPT_HEADER, array("Content-Type: text/xml; charset=utf-8"));
        curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
        $curl_scraped_page = curl_exec($ch);


        if ($curl_scraped_page === false) {
            return 'Curl error: ' . curl_error($ch);
            curl_close($ch);
        } else {

            return $curl_scraped_page;
            curl_close($ch);
        }

經過一些研發后,我已經解決了這個問題。 卷曲線存在問題,編輯卷曲代碼后,我的WSDL工作正常

下面是工作代碼

$curl = curl_init();
        curl_setopt($curl, CURLOPT_URL, $url);
        curl_setopt($curl, CURLOPT_PROXY, $proxy);
        curl_setopt($curl, CURLOPT_PROXYUSERPWD, $proxyauth);
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($curl, CURLOPT_TIMEOUT, 120);
        curl_setopt($curl, CURLOPT_ENCODING, 'gzip');

        curl_setopt($curl, CURLOPT_HTTPHEADER, array(
            'SOAPAction:""',
            'Content-Type: text/xml; charset=utf-8',
        ));

        curl_setopt($curl, CURLOPT_POST, 1);
        curl_setopt($curl, CURLOPT_POSTFIELDS, $data);

        $result = curl_exec($curl);
        if ($result === false) {
            return 'Curl error: ' . curl_error($curl);
            curl_close($curl);
        } else {
            //convert xml into array
            $xmlDoc = new MyDOMDocument();
            $xmlDoc->loadXML($result);
            return $xmlArray = $xmlDoc->toArray();

            curl_close($curl);
        }    

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM