哪位高手帮小弟我改编用curl调用webservice
时间:2021-07-01 10:21:17
帮助过:35人阅读
谁帮我改编用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 );
------解决方案--------------------
楼主估计想结贴结疯拉。呵呵