我有以下代碼訪問XML數據從PHP捲曲,而它的運行
$URL = 'https://hostedconnect.m5net.com/bobl/bobl';
$xml = '<Command xmlns:m5="http://www.m5net.com/org/m5/data/v2/cti" xmlns:csta="http://www.ecma-international.org/standards/ecma-323/csta/ed5">
<ApplicationContext>BoblConsole</ApplicationContext>
<Arguments xsi:type="org.m5.data.v2.cti.HostedConnectObject" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<csta:MonitorStart>
<csta:monitorObject>
<csta:deviceObject>DEVICE</csta:deviceObject>
</csta:monitorObject>
</csta:MonitorStart>
</Arguments>
<FormattedXml>true</FormattedXml>
<Id>9</Id>
<Name>org.m5.apps.v2.cti.HostedConnect.request</Name>
<Password>PASSWORD</Password>
<User>USER</User>
</Command>';
$ch = curl_init($URL);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array (
'Transfer-Encoding: chunked',
'Content-Encoding: chunked',
'Connection: keep-alive',
'Content-Type: text/xml'
));
curl_setopt($ch, CURLOPT_POSTFIELDS, "$xml");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);
$test = stream_get_contents($fp_tmp);
的API應該返回XML數據,但我不知道如何捲曲運行時訪問這些數據。我試過使用流,並將數據寫入文件,但它們都不起作用。 cURL請求正常運行。當運行它時會返回550個字節,當發生應該返回數據的事件時,它會返回9100個字節。這使我相信正確的事情正在發生,但我不知道如何從curl訪問數據。
我需要curl持續運行,這是爲了通過我們的託管服務提供商提供的api監控我們的電話系統。
只是澄清:'我需要捲曲持續運行'即既沒有關閉http連接,也沒有響應「完成」 - 服務器或多或少地「流」事件在一個單一的http repsonse事件永遠不會結束? – VolkerK
是的,這是正確的。我本可以更清楚。當我們不再需要它時,有一個關閉連接的API調用。 –