Ben Curl ve PHP ile nasıl SOAP XML gönderebilir?

0 Cevap php

Bu gün için adamcağız beni; Ben Curl üzerinden bir SOAP mesajı göndermeye çalışıyorum ama sadece bir hatası, ama, ben gerçekten nasıl göremiyorum "barındırmak için bağlantı kurulamadı" elde tutmak.

Ben aynı URL ve veri ile çalışıyor bir ASP sürümü var. Ben sadece bir PHP / Curl şey olduğunu düşünüyorum.

Şu anda aşağıdaki kodu (CURLOPT_POSTFIELDS veri geçerli bir SOAP zarf dizedir) var:

$soap_do = curl_init();
curl_setopt($soap_do, CURLOPT_URL,            "https://xxx.yyy.com:517/zzz.asmx" );
curl_setopt($soap_do, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($soap_do, CURLOPT_TIMEOUT,        10);
curl_setopt($soap_do, CURLOPT_RETURNTRANSFER, true );
curl_setopt($soap_do, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($soap_do, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($soap_do, CURLOPT_POST,           true );            
curl_setopt($soap_do, CURLOPT_POSTFIELDS,     '<soap:Envelope>...</soap:Envelope>'); 
curl_setopt($soap_do, CURLOPT_HTTPHEADER,     array('Content-Type: text/xml; charset=utf-8', 'Content-Length: '.strlen('<soap:Envelope>...</soap:Envelope>') ));

if(curl_exec($soap_do) === false)
{                
    $err = 'Curl error: ' . curl_error($soap_do);
    curl_close($soap_do);
    return $err;
}
else
{
    curl_close($soap_do); 
    return 'Operation completed without any errors';
}

Yani herhangi bir fikir neden sadece hataları her zaman?

ASP sürüm çalışıyor! Kodu:

Set xmlhttp = server.Createobject("MSXML2.ServerXMLHTTP")
xmlhttp.Open "POST","https://xxx.yyy.com:517/zzz.asmx"
xmlhttp.setRequestHeader "Content-Type", "text/xml; charset=utf-8"
xmlhttp.Send('<soap:Envelope>...</soap:Envelope>')

0 Cevap