哪位高手幫小弟我改編用curl調用web service
來源:互聯網
上載者:User
誰幫我改編用curl調用web service
$s = new SoapClient("http://www.abc.com/WebServices/Service1.asmx?wsdl",true);
$s->soap_defencoding = 'UTF-8';
$s->decode_utf8 = false;
$result=$s->call('UserInfo',array('user'=> urldecode($_GET['username'])));
if (!$err=$s->getError()) {
$list=explode(";",$result["UserInfoResult"]);
array_pop($list);
} else {
echo '
';
}
?>
Service1.asmx這個web service裡有個UserInfo函數,要把參數傳進這個函數,返回結果集
本來好好的,但是虛擬機器主機不給開soap拓展,那就不用白費力氣了,,現在怎麼弄curl改寫
------解決方案--------------------
------解決方案--------------------
$url="https://xxx/xml";
$ch = curl_init ($url);
$headers = array(
"POST "."https://cxxx/integration/xml"." HTTP/1.0",
"Content-type: text/xml;charset=\"utf-8\"",
"Accept: text/xml",
"Content-length: ".strlen($xmlcontent),
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,0);
// Apply the XML to our curl call
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $xmlcontent);
$data = curl_exec($ch);
if (curl_errno($ch)) {
die('會議資訊出錯,有可能會議還未開始!');
exit;
} else {
//var_dump($data);
curl_close($ch);
}
//
$succes='';
$ciURL='';
$token='';
$xml = simplexml_load_string($data);
$ciURL = $xml->body->ciURL;
$token = $xml->body->token;
var_dump( $xml );
------解決方案--------------------
樓主估計想結貼結瘋拉。呵呵